diff --git a/gapic-libraries-bom/pom.xml b/gapic-libraries-bom/pom.xml index b6f223ef2a28..96cdd4e69c92 100644 --- a/gapic-libraries-bom/pom.xml +++ b/gapic-libraries-bom/pom.xml @@ -560,6 +560,13 @@ pom import + + com.google.cloud + google-cloud-developer-knowledge-bom + 0.0.1-SNAPSHOT + pom + import + com.google.cloud google-cloud-developerconnect-bom diff --git a/generation_config.yaml b/generation_config.yaml index 770a49d2dfd0..94c6b62f41e0 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -446,6 +446,25 @@ libraries: - proto_path: google/cloud/bigquery/storage/v1beta1 - proto_path: google/cloud/bigquery/storage/v1beta2 - proto_path: google/cloud/bigquery/storage/v1beta +- api_shortname: bigtable + api_description: API for reading and writing the contents of Bigtables associated + with a cloud project. + name_pretty: Cloud Bigtable + product_documentation: https://cloud.google.com/bigtable + client_documentation: + https://cloud.google.com/java/docs/reference/google-cloud-bigtable/latest/history + issue_tracker: https://issuetracker.google.com/savedsearches/559777 + release_level: stable + distribution_name: com.google.cloud:google-cloud-bigtable + codeowner_team: '@googleapis/bigtable-team' + api_id: bigtable.googleapis.com + library_type: GAPIC_COMBO + extra_versioned_modules: google-cloud-bigtable-emulator,google-cloud-bigtable-emulator-core + excluded_poms: google-cloud-bigtable-bom + recommended_package: com.google.cloud.bigtable + GAPICs: + - proto_path: google/bigtable/v2 + - proto_path: google/bigtable/admin/v2 - api_shortname: cloudbilling name_pretty: Cloud Billing product_documentation: https://cloud.google.com/billing/docs @@ -649,6 +668,31 @@ libraries: GAPICs: - proto_path: google/cloud/support/v2 - proto_path: google/cloud/support/v2beta +- api_shortname: common-protos + name_pretty: Common Protos + product_documentation: https://github.com/googleapis/api-common-protos + api_description: Protobuf classes for Google's common protos. + release_level: stable + client_documentation: + https://cloud.google.com/java/docs/reference/proto-google-common-protos/latest/history + distribution_name: com.google.api.grpc:proto-google-common-protos + excluded_dependencies: + grpc-google-common-protos,proto-google-common-protos,proto-google-common-protos-parent + excluded_poms: proto-google-common-protos-bom,proto-google-common-protos + library_type: OTHER + GAPICs: + - proto_path: google/api + - proto_path: google/apps/card/v1 + - proto_path: google/cloud + - proto_path: google/cloud/audit + - proto_path: google/cloud/location + - proto_path: google/geo/type + - proto_path: google/logging/type + - proto_path: google/longrunning + - proto_path: google/rpc + - proto_path: google/rpc/context + - proto_path: google/shopping/type + - proto_path: google/type - api_shortname: compute name_pretty: Compute Engine product_documentation: https://cloud.google.com/compute/ @@ -946,6 +990,22 @@ libraries: GAPICs: - proto_path: google/cloud/developerconnect/v1 requires_billing: true +- api_shortname: developerknowledge + name_pretty: Developer Knowledge API + product_documentation: https://developers.google.com/knowledge + api_description: The Developer Knowledge API provides access to Google's developer + knowledge + client_documentation: + https://cloud.google.com/java/docs/reference/google-cloud-developer-knowledge/latest/overview + release_level: preview + distribution_name: com.google.cloud:google-cloud-developer-knowledge + api_id: developerknowledge.googleapis.com + library_type: GAPIC_AUTO + group_id: com.google.cloud + cloud_api: true + GAPICs: + - proto_path: google/developers/knowledge/v1 + requires_billing: true - api_shortname: devicestreaming name_pretty: Device Streaming API product_documentation: https://cloud.google.com/device-streaming/docs @@ -1143,6 +1203,31 @@ libraries: GAPICs: - proto_path: google/cloud/financialservices/v1 requires_billing: true +- api_shortname: firestore + name_pretty: Cloud Firestore + product_documentation: https://cloud.google.com/firestore + client_documentation: + https://cloud.google.com/java/docs/reference/google-cloud-firestore/latest/history + issue_tracker: https://issuetracker.google.com/savedsearches/5337669 + release_level: stable + language: java + distribution_name: com.google.cloud:google-cloud-firestore + codeowner_team: '@googleapis/firestore-team' + api_id: firestore.googleapis.com + library_type: GAPIC_COMBO + api_description: is a fully-managed NoSQL document database for mobile, web, and + server development from Firebase and Google Cloud Platform. It's backed by a + multi-region replicated database that ensures once data is committed, it's durable + even in the face of unexpected disasters. Not only that, but despite being a distributed + database, it's also strongly consistent and offers seamless integration with other + Firebase and Google Cloud Platform products, including Google Cloud Functions. + transport: grpc + excluded_poms: google-cloud-firestore,google-cloud-firestore-bom + recommended_package: com.google.cloud.firestore + GAPICs: + - proto_path: google/firestore/v1 + - proto_path: google/firestore/admin/v1 + - proto_path: google/firestore/bundle - api_shortname: cloudfunctions name_pretty: Cloud Functions product_documentation: https://cloud.google.com/functions @@ -1315,6 +1400,22 @@ libraries: - proto_path: google/cloud/hypercomputecluster/v1beta - proto_path: google/cloud/hypercomputecluster/v1 requires_billing: true +- api_shortname: iam + name_pretty: IAM + product_documentation: https://cloud.google.com/iam + api_description: Manages access control for Google Cloud Platform resources + release_level: stable + client_documentation: https://cloud.google.com/java/docs/reference/proto-google-iam-v1/latest/overview + distribution_name: com.google.api.grpc:proto-google-iam-v1 + excluded_dependencies: grpc-google-iam-v1 + excluded_poms: proto-google-iam-v1-bom,google-iam-policy,proto-google-iam-v1 + library_type: OTHER + GAPICs: + - proto_path: google/iam/v1 + - proto_path: google/iam/v2 + - proto_path: google/iam/v2beta + - proto_path: google/iam/v3 + - proto_path: google/iam/v3beta - api_shortname: iam-admin name_pretty: IAM Admin API product_documentation: https://cloud.google.com/iam/docs/apis @@ -2140,6 +2241,27 @@ libraries: GAPICs: - proto_path: google/cloud/security/publicca/v1beta1 - proto_path: google/cloud/security/publicca/v1 +- api_shortname: pubsub + name_pretty: Cloud Pub/Sub + api_reference: https://cloud.google.com/pubsub/ + product_documentation: https://cloud.google.com/pubsub/docs/ + client_documentation: https://cloud.google.com/java/docs/reference/google-cloud-pubsub/latest/history + api_description: is designed to provide reliable, many-to-many, asynchronous messaging + between applications. Publisher applications can send messages to a topic and + other applications can subscribe to that topic to receive the messages. By decoupling + senders and receivers, Google Cloud Pub/Sub allows developers to communicate between + independently written applications. + issue_tracker: https://issuetracker.google.com/savedsearches/559741 + release_level: stable + language: java + distribution_name: com.google.cloud:google-cloud-pubsub + codeowner_team: '@googleapis/pubsub-team' + api_id: pubsub.googleapis.com + library_type: GAPIC_COMBO + requires_billing: true + recommended_package: com.google.cloud.pubsub.v1 + GAPICs: + - proto_path: google/pubsub/v1 - api_shortname: rapidmigrationassessment name_pretty: Rapid Migration Assessment API product_documentation: https://cloud.google.com/migration-center/docs @@ -2596,6 +2718,15 @@ libraries: - proto_path: google/shopping/merchant/reviews/v1beta requires_billing: true library_name: shopping-merchant-reviews +- api_shortname: showcase + excluded_poms: gapic-showcase-bom + name_pretty: Showcase + api_description: Showcase module + product_documentation: https://cloud.google.com/dummy + distribution_name: com.google.cloud:gapic-showcase + library_type: OTHER + GAPICs: + - proto_path: schema/google/showcase/v1beta1 - api_shortname: spanner name_pretty: Cloud Spanner product_documentation: https://cloud.google.com/spanner/docs/ @@ -3046,114 +3177,3 @@ libraries: GAPICs: - proto_path: google/cloud/workstations/v1 - proto_path: google/cloud/workstations/v1beta -- api_shortname: common-protos - name_pretty: Common Protos - product_documentation: https://github.com/googleapis/api-common-protos - api_description: Protobuf classes for Google's common protos. - release_level: stable - client_documentation: https://cloud.google.com/java/docs/reference/proto-google-common-protos/latest/history - distribution_name: com.google.api.grpc:proto-google-common-protos - excluded_dependencies: grpc-google-common-protos,proto-google-common-protos,proto-google-common-protos-parent - excluded_poms: proto-google-common-protos-bom,proto-google-common-protos - library_type: OTHER - GAPICs: - - proto_path: google/api - - proto_path: google/apps/card/v1 - - proto_path: google/cloud - - proto_path: google/cloud/audit - - proto_path: google/cloud/location - - proto_path: google/geo/type - - proto_path: google/logging/type - - proto_path: google/longrunning - - proto_path: google/rpc - - proto_path: google/rpc/context - - proto_path: google/shopping/type - - proto_path: google/type -- api_shortname: showcase - excluded_poms: gapic-showcase-bom - name_pretty: Showcase - api_description: Showcase module - product_documentation: https://cloud.google.com/dummy - distribution_name: com.google.cloud:gapic-showcase - library_type: OTHER - GAPICs: - - proto_path: schema/google/showcase/v1beta1 -- api_shortname: iam - name_pretty: IAM - product_documentation: https://cloud.google.com/iam - api_description: Manages access control for Google Cloud Platform resources - release_level: stable - client_documentation: https://cloud.google.com/java/docs/reference/proto-google-iam-v1/latest/overview - distribution_name: com.google.api.grpc:proto-google-iam-v1 - excluded_dependencies: "grpc-google-iam-v1" - excluded_poms: "proto-google-iam-v1-bom,google-iam-policy,proto-google-iam-v1" - library_type: OTHER - GAPICs: - - proto_path: google/iam/v1 - - proto_path: google/iam/v2 - - proto_path: google/iam/v2beta - - proto_path: google/iam/v3 - - proto_path: google/iam/v3beta -- api_shortname: pubsub - name_pretty: Cloud Pub/Sub - api_reference: https://cloud.google.com/pubsub/ - product_documentation: https://cloud.google.com/pubsub/docs/ - client_documentation: https://cloud.google.com/java/docs/reference/google-cloud-pubsub/latest/history - api_description: is designed to provide reliable, many-to-many, asynchronous messaging - between applications. Publisher applications can send messages to a topic and - other applications can subscribe to that topic to receive the messages. By decoupling - senders and receivers, Google Cloud Pub/Sub allows developers to communicate between - independently written applications. - issue_tracker: https://issuetracker.google.com/savedsearches/559741 - release_level: stable - language: java - distribution_name: com.google.cloud:google-cloud-pubsub - codeowner_team: '@googleapis/pubsub-team' - api_id: pubsub.googleapis.com - library_type: GAPIC_COMBO - requires_billing: true - recommended_package: com.google.cloud.pubsub.v1 - GAPICs: - - proto_path: google/pubsub/v1 -- api_shortname: bigtable - api_description: API for reading and writing the contents of Bigtables associated - with a cloud project. - name_pretty: Cloud Bigtable - product_documentation: https://cloud.google.com/bigtable - client_documentation: https://cloud.google.com/java/docs/reference/google-cloud-bigtable/latest/history - issue_tracker: https://issuetracker.google.com/savedsearches/559777 - release_level: stable - distribution_name: com.google.cloud:google-cloud-bigtable - codeowner_team: '@googleapis/bigtable-team' - api_id: bigtable.googleapis.com - library_type: GAPIC_COMBO - extra_versioned_modules: google-cloud-bigtable-emulator,google-cloud-bigtable-emulator-core - excluded_poms: google-cloud-bigtable-bom - recommended_package: com.google.cloud.bigtable - GAPICs: - - proto_path: google/bigtable/v2 - - proto_path: google/bigtable/admin/v2 -- api_shortname: firestore - name_pretty: Cloud Firestore - product_documentation: https://cloud.google.com/firestore - client_documentation: https://cloud.google.com/java/docs/reference/google-cloud-firestore/latest/history - issue_tracker: https://issuetracker.google.com/savedsearches/5337669 - release_level: stable - language: java - distribution_name: com.google.cloud:google-cloud-firestore - codeowner_team: '@googleapis/firestore-team' - api_id: firestore.googleapis.com - library_type: GAPIC_COMBO - api_description: is a fully-managed NoSQL document database for mobile, web, and - server development from Firebase and Google Cloud Platform. It's backed by a - multi-region replicated database that ensures once data is committed, it's durable - even in the face of unexpected disasters. Not only that, but despite being a distributed - database, it's also strongly consistent and offers seamless integration with other - Firebase and Google Cloud Platform products, including Google Cloud Functions. - transport: grpc - excluded_poms: google-cloud-firestore,google-cloud-firestore-bom - recommended_package: com.google.cloud.firestore - GAPICs: - - proto_path: google/firestore/v1 - - proto_path: google/firestore/admin/v1 - - proto_path: google/firestore/bundle diff --git a/java-developerknowledge/.OwlBot-hermetic.yaml b/java-developerknowledge/.OwlBot-hermetic.yaml new file mode 100644 index 000000000000..453bf6e1b842 --- /dev/null +++ b/java-developerknowledge/.OwlBot-hermetic.yaml @@ -0,0 +1,35 @@ +# Copyright 2024 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. + + +deep-remove-regex: +- "/java-developerknowledge/grpc-google-.*/src" +- "/java-developerknowledge/proto-google-.*/src" +- "/java-developerknowledge/google-.*/src" +- "/java-developerknowledge/samples/snippets/generated" + +deep-preserve-regex: +- "/java-developerknowledge/google-.*/src/test/java/com/google/cloud/.*/v.*/it/IT.*Test.java" + +deep-copy-regex: +- source: "/google/developers/knowledge/(v.*)/.*-java/proto-google-.*/src" + dest: "/owl-bot-staging/java-developerknowledge/$1/proto-google-cloud-developer-knowledge-$1/src" +- source: "/google/developers/knowledge/(v.*)/.*-java/grpc-google-.*/src" + dest: "/owl-bot-staging/java-developerknowledge/$1/grpc-google-cloud-developer-knowledge-$1/src" +- source: "/google/developers/knowledge/(v.*)/.*-java/gapic-google-.*/src" + dest: "/owl-bot-staging/java-developerknowledge/$1/google-cloud-developer-knowledge/src" +- source: "/google/developers/knowledge/(v.*)/.*-java/samples/snippets/generated" + dest: "/owl-bot-staging/java-developerknowledge/$1/samples/snippets/generated" + +api-name: developerknowledge \ No newline at end of file diff --git a/java-developerknowledge/.repo-metadata.json b/java-developerknowledge/.repo-metadata.json new file mode 100644 index 000000000000..13ce3ae135ba --- /dev/null +++ b/java-developerknowledge/.repo-metadata.json @@ -0,0 +1,16 @@ +{ + "api_shortname": "developerknowledge", + "name_pretty": "Developer Knowledge API", + "product_documentation": "https://developers.google.com/knowledge", + "api_description": "The Developer Knowledge API provides access to Google's developer knowledge", + "client_documentation": "https://cloud.google.com/java/docs/reference/google-cloud-developer-knowledge/latest/overview", + "release_level": "preview", + "transport": "both", + "language": "java", + "repo": "googleapis/google-cloud-java", + "repo_short": "java-developerknowledge", + "distribution_name": "com.google.cloud:google-cloud-developer-knowledge", + "api_id": "developerknowledge.googleapis.com", + "library_type": "GAPIC_AUTO", + "requires_billing": true +} \ No newline at end of file diff --git a/java-developerknowledge/README.md b/java-developerknowledge/README.md new file mode 100644 index 000000000000..bfa520423fbf --- /dev/null +++ b/java-developerknowledge/README.md @@ -0,0 +1,205 @@ +# Google Developer Knowledge API Client for Java + +Java idiomatic client for [Developer Knowledge API][product-docs]. + +[![Maven][maven-version-image]][maven-version-link] +![Stability][stability-image] + +- [Product Documentation][product-docs] +- [Client Library Documentation][javadocs] + +> Note: This client is a work-in-progress, and may occasionally +> make backwards-incompatible changes. + + +## Quickstart + + +If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: + +```xml + + + + com.google.cloud + libraries-bom + 26.83.0 + pom + import + + + + + + + com.google.cloud + google-cloud-developer-knowledge + + +``` + +If you are using Maven without the BOM, add this to your dependencies: + + +```xml + + com.google.cloud + google-cloud-developer-knowledge + 0.0.0 + +``` + +If you are using Gradle without BOM, add this to your dependencies: + +```Groovy +implementation 'com.google.cloud:google-cloud-developer-knowledge:0.0.0' +``` + +If you are using SBT, add this to your dependencies: + +```Scala +libraryDependencies += "com.google.cloud" % "google-cloud-developer-knowledge" % "0.0.0" +``` + +## Authentication + +See the [Authentication][authentication] section in the base directory's README. + +## Authorization + +The client application making API calls must be granted [authorization scopes][auth-scopes] required for the desired Developer Knowledge API APIs, and the authenticated principal must have the [IAM role(s)][predefined-iam-roles] required to access GCP resources using the Developer Knowledge API API calls. + +## Getting Started + +### Prerequisites + +You will need a [Google Cloud Platform Console][developer-console] project with the Developer Knowledge API [API enabled][enable-api]. +You will need to [enable billing][enable-billing] to use Google Developer Knowledge API. +[Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by +[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line: +`gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`. + +### Installation and setup + +You'll need to obtain the `google-cloud-developer-knowledge` library. See the [Quickstart](#quickstart) section +to add `google-cloud-developer-knowledge` as a dependency in your code. + +## About Developer Knowledge API + + +[Developer Knowledge API][product-docs] The Developer Knowledge API provides access to Google's developer knowledge + +See the [Developer Knowledge API client library docs][javadocs] to learn how to +use this Developer Knowledge API Client Library. + + + + + + +## Troubleshooting + +To get help, follow the instructions in the [shared Troubleshooting document][troubleshooting]. + +## Transport + +Developer Knowledge API uses both gRPC and HTTP/JSON for the transport layer. + +## Supported Java Versions + +Java 8 or above is required for using this client. + +Google's Java client libraries, +[Google Cloud Client Libraries][cloudlibs] +and +[Google Cloud API Libraries][apilibs], +follow the +[Oracle Java SE support roadmap][oracle] +(see the Oracle Java SE Product Releases section). + +### For new development + +In general, new feature development occurs with support for the lowest Java +LTS version covered by Oracle's Premier Support (which typically lasts 5 years +from initial General Availability). If the minimum required JVM for a given +library is changed, it is accompanied by a [semver][semver] major release. + +Java 11 and (in September 2021) Java 17 are the best choices for new +development. + +### Keeping production systems current + +Google tests its client libraries with all current LTS versions covered by +Oracle's Extended Support (which typically lasts 8 years from initial +General Availability). + +#### Legacy support + +Google's client libraries support legacy versions of Java runtimes with long +term stable libraries that don't receive feature updates on a best efforts basis +as it may not be possible to backport all patches. + +Google provides updates on a best efforts basis to apps that continue to use +Java 7, though apps might need to upgrade to current versions of the library +that supports their JVM. + +#### Where to find specific information + +The latest versions and the supported Java versions are identified on +the individual GitHub repository `github.com/GoogleAPIs/java-SERVICENAME` +and on [google-cloud-java][g-c-j]. + +## Versioning + + +This library follows [Semantic Versioning](http://semver.org/). + + +It is currently in major version zero (``0.y.z``), which means that anything may change at any time +and the public API should not be considered stable. + + +## Contributing + + +Contributions to this library are always welcome and highly encouraged. + +See [CONTRIBUTING][contributing] for more information how to get started. + +Please note that this project is released with a Contributor Code of Conduct. By participating in +this project you agree to abide by its terms. See [Code of Conduct][code-of-conduct] for more +information. + + +## License + +Apache 2.0 - See [LICENSE][license] for more information. + +Java is a registered trademark of Oracle and/or its affiliates. + +[product-docs]: https://developers.google.com/knowledge +[javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-developer-knowledge/latest/overview +[stability-image]: https://img.shields.io/badge/stability-preview-yellow +[maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-developer-knowledge.svg +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-developer-knowledge/0.0.0 +[authentication]: https://github.com/googleapis/google-cloud-java#authentication +[auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes +[predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles +[iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy +[developer-console]: https://console.developers.google.com/ +[create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects +[cloud-cli]: https://cloud.google.com/cli +[troubleshooting]: https://github.com/googleapis/google-cloud-java/blob/main/TROUBLESHOOTING.md +[contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md +[code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct +[license]: https://github.com/googleapis/google-cloud-java/blob/main/LICENSE +[enable-billing]: https://cloud.google.com/apis/docs/getting-started#enabling_billing +[enable-api]: https://console.cloud.google.com/flows/enableapi?apiid=developerknowledge.googleapis.com +[libraries-bom]: https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM +[shell_img]: https://gstatic.com/cloudssh/images/open-btn.png + +[semver]: https://semver.org/ +[cloudlibs]: https://cloud.google.com/apis/docs/client-libraries-explained +[apilibs]: https://cloud.google.com/apis/docs/client-libraries-explained#google_api_client_libraries +[oracle]: https://www.oracle.com/java/technologies/java-se-support-roadmap.html +[g-c-j]: http://github.com/googleapis/google-cloud-java diff --git a/java-developerknowledge/google-cloud-developer-knowledge-bom/pom.xml b/java-developerknowledge/google-cloud-developer-knowledge-bom/pom.xml new file mode 100644 index 000000000000..f1d0a2bd325a --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge-bom/pom.xml @@ -0,0 +1,43 @@ + + + 4.0.0 + com.google.cloud + google-cloud-developer-knowledge-bom + 0.0.1-SNAPSHOT + pom + + com.google.cloud + google-cloud-pom-parent + 1.87.0-SNAPSHOT + ../../google-cloud-pom-parent/pom.xml + + + Google Developer Knowledge API BOM + + BOM for Developer Knowledge API + + + + true + + + + + + com.google.cloud + google-cloud-developer-knowledge + 0.0.1-SNAPSHOT + + + com.google.api.grpc + grpc-google-cloud-developer-knowledge-v1 + 0.0.1-SNAPSHOT + + + com.google.api.grpc + proto-google-cloud-developer-knowledge-v1 + 0.0.1-SNAPSHOT + + + + diff --git a/java-developerknowledge/google-cloud-developer-knowledge/pom.xml b/java-developerknowledge/google-cloud-developer-knowledge/pom.xml new file mode 100644 index 000000000000..f5305c202ed2 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/pom.xml @@ -0,0 +1,115 @@ + + + 4.0.0 + com.google.cloud + google-cloud-developer-knowledge + 0.0.1-SNAPSHOT + jar + Google Developer Knowledge API + Developer Knowledge API The Developer Knowledge API provides access to Google's developer knowledge + + com.google.cloud + google-cloud-developer-knowledge-parent + 0.0.1-SNAPSHOT + + + google-cloud-developer-knowledge + + + + io.grpc + grpc-api + + + io.grpc + grpc-stub + + + io.grpc + grpc-protobuf + + + com.google.api + api-common + + + com.google.protobuf + protobuf-java + + + com.google.api.grpc + proto-google-common-protos + + + + com.google.api.grpc + proto-google-cloud-developer-knowledge-v1 + + + com.google.guava + guava + + + com.google.api + gax + + + com.google.api + gax-grpc + + + com.google.api + gax-httpjson + + + com.google.api.grpc + proto-google-iam-v1 + + + org.threeten + threetenbp + + + + + com.google.api.grpc + grpc-google-common-protos + test + + + com.google.api.grpc + grpc-google-iam-v1 + test + + + junit + junit + test + + + + com.google.api.grpc + grpc-google-cloud-developer-knowledge-v1 + test + + + + com.google.api + gax + testlib + test + + + com.google.api + gax-grpc + testlib + test + + + com.google.api + gax-httpjson + testlib + test + + + diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeClient.java b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeClient.java new file mode 100644 index 000000000000..e675466abb68 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeClient.java @@ -0,0 +1,660 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1; + +import com.google.api.core.ApiFuture; +import com.google.api.core.ApiFutures; +import com.google.api.gax.core.BackgroundResource; +import com.google.api.gax.paging.AbstractFixedSizeCollection; +import com.google.api.gax.paging.AbstractPage; +import com.google.api.gax.paging.AbstractPagedListResponse; +import com.google.api.gax.rpc.PageContext; +import com.google.api.gax.rpc.UnaryCallable; +import com.google.common.util.concurrent.MoreExecutors; +import com.google.developers.knowledge.v1.stub.DeveloperKnowledgeStub; +import com.google.developers.knowledge.v1.stub.DeveloperKnowledgeStubSettings; +import java.io.IOException; +import java.util.List; +import java.util.concurrent.TimeUnit; +import javax.annotation.Generated; + +// AUTO-GENERATED DOCUMENTATION AND CLASS. +/** + * Service Description: The Developer Knowledge API provides programmatic access to Google's public + * developer documentation, enabling you to integrate this knowledge base into your own applications + * and workflows. + * + *

The API is designed to be the canonical source for machine-readable access to Google's + * developer documentation. + * + *

A typical use case is to first use + * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks] + * to find relevant page URIs based on a query, and then use + * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] + * or + * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] + * to fetch the full content of the top results. + * + *

All document content is provided in Markdown format. + * + *

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: + * + *

{@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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) {
+ *   DocumentName name = DocumentName.of("[DOCUMENT]");
+ *   Document response = developerKnowledgeClient.getDocument(name);
+ * }
+ * }
+ * + *

Note: close() needs to be called on the DeveloperKnowledgeClient object to clean up resources + * such as threads. In the example above, try-with-resources is used, which automatically calls + * close(). + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Methods
MethodDescriptionMethod Variants

SearchDocumentChunks

Searches for developer knowledge across Google's developer documentation. Returns [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s based on the user's query. There may be many chunks from the same [Document][google.developers.knowledge.v1.Document]. To retrieve full documents, use [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] or [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] with the [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent] returned in the [SearchDocumentChunksResponse.results][google.developers.knowledge.v1.SearchDocumentChunksResponse.results].

+ *

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

+ *
    + *
  • searchDocumentChunks(SearchDocumentChunksRequest request) + *

+ *

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

+ *
    + *
  • searchDocumentChunksPagedCallable() + *

  • searchDocumentChunksCallable() + *

+ *

GetDocument

Retrieves a single document with its full Markdown content.

+ *

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

+ *
    + *
  • getDocument(GetDocumentRequest request) + *

+ *

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

+ *
    + *
  • getDocument(DocumentName name) + *

  • getDocument(String name) + *

+ *

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

+ *
    + *
  • getDocumentCallable() + *

+ *

BatchGetDocuments

Retrieves multiple documents, each with its full Markdown content.

+ *

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

+ *
    + *
  • batchGetDocuments(BatchGetDocumentsRequest request) + *

+ *

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

+ *
    + *
  • batchGetDocumentsCallable() + *

+ *
+ * + *

See the individual methods for example code. + * + *

Many parameters require resource names to be formatted in a particular way. To assist with + * these names, this class includes a format method for each type of name, and additionally a parse + * method to extract the individual identifiers contained within names that are returned. + * + *

This class can be customized by passing in a custom instance of DeveloperKnowledgeSettings to + * create(). For example: + * + *

To customize credentials: + * + *

{@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
+ * DeveloperKnowledgeSettings developerKnowledgeSettings =
+ *     DeveloperKnowledgeSettings.newBuilder()
+ *         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
+ *         .build();
+ * DeveloperKnowledgeClient developerKnowledgeClient =
+ *     DeveloperKnowledgeClient.create(developerKnowledgeSettings);
+ * }
+ * + *

To customize the endpoint: + * + *

{@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
+ * DeveloperKnowledgeSettings developerKnowledgeSettings =
+ *     DeveloperKnowledgeSettings.newBuilder().setEndpoint(myEndpoint).build();
+ * DeveloperKnowledgeClient developerKnowledgeClient =
+ *     DeveloperKnowledgeClient.create(developerKnowledgeSettings);
+ * }
+ * + *

To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over + * the wire: + * + *

{@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
+ * DeveloperKnowledgeSettings developerKnowledgeSettings =
+ *     DeveloperKnowledgeSettings.newHttpJsonBuilder().build();
+ * DeveloperKnowledgeClient developerKnowledgeClient =
+ *     DeveloperKnowledgeClient.create(developerKnowledgeSettings);
+ * }
+ * + *

Please refer to the GitHub repository's samples for more quickstart code snippets. + */ +@Generated("by gapic-generator-java") +public class DeveloperKnowledgeClient implements BackgroundResource { + private final DeveloperKnowledgeSettings settings; + private final DeveloperKnowledgeStub stub; + + /** Constructs an instance of DeveloperKnowledgeClient with default settings. */ + public static final DeveloperKnowledgeClient create() throws IOException { + return create(DeveloperKnowledgeSettings.newBuilder().build()); + } + + /** + * Constructs an instance of DeveloperKnowledgeClient, using the given settings. The channels are + * created based on the settings passed in, or defaults for any settings that are not set. + */ + public static final DeveloperKnowledgeClient create(DeveloperKnowledgeSettings settings) + throws IOException { + return new DeveloperKnowledgeClient(settings); + } + + /** + * Constructs an instance of DeveloperKnowledgeClient, using the given stub for making calls. This + * is for advanced usage - prefer using create(DeveloperKnowledgeSettings). + */ + public static final DeveloperKnowledgeClient create(DeveloperKnowledgeStub stub) { + return new DeveloperKnowledgeClient(stub); + } + + /** + * Constructs an instance of DeveloperKnowledgeClient, using the given settings. This is protected + * so that it is easy to make a subclass, but otherwise, the static factory methods should be + * preferred. + */ + protected DeveloperKnowledgeClient(DeveloperKnowledgeSettings settings) throws IOException { + this.settings = settings; + this.stub = ((DeveloperKnowledgeStubSettings) settings.getStubSettings()).createStub(); + } + + protected DeveloperKnowledgeClient(DeveloperKnowledgeStub stub) { + this.settings = null; + this.stub = stub; + } + + public final DeveloperKnowledgeSettings getSettings() { + return settings; + } + + public DeveloperKnowledgeStub getStub() { + return stub; + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Searches for developer knowledge across Google's developer documentation. Returns + * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s based on the user's query. There + * may be many chunks from the same [Document][google.developers.knowledge.v1.Document]. To + * retrieve full documents, use + * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] + * or + * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] + * with the [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent] returned + * in the + * [SearchDocumentChunksResponse.results][google.developers.knowledge.v1.SearchDocumentChunksResponse.results]. + * + *

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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) {
+   *   SearchDocumentChunksRequest request =
+   *       SearchDocumentChunksRequest.newBuilder()
+   *           .setQuery("query107944136")
+   *           .setPageSize(883849137)
+   *           .setPageToken("pageToken873572522")
+   *           .setFilter("filter-1274492040")
+   *           .build();
+   *   for (DocumentChunk element :
+   *       developerKnowledgeClient.searchDocumentChunks(request).iterateAll()) {
+   *     // doThingsWith(element);
+   *   }
+   * }
+   * }
+ * + * @param request The request object containing all of the parameters for the API call. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final SearchDocumentChunksPagedResponse searchDocumentChunks( + SearchDocumentChunksRequest request) { + return searchDocumentChunksPagedCallable().call(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Searches for developer knowledge across Google's developer documentation. Returns + * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s based on the user's query. There + * may be many chunks from the same [Document][google.developers.knowledge.v1.Document]. To + * retrieve full documents, use + * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] + * or + * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] + * with the [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent] returned + * in the + * [SearchDocumentChunksResponse.results][google.developers.knowledge.v1.SearchDocumentChunksResponse.results]. + * + *

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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) {
+   *   SearchDocumentChunksRequest request =
+   *       SearchDocumentChunksRequest.newBuilder()
+   *           .setQuery("query107944136")
+   *           .setPageSize(883849137)
+   *           .setPageToken("pageToken873572522")
+   *           .setFilter("filter-1274492040")
+   *           .build();
+   *   ApiFuture future =
+   *       developerKnowledgeClient.searchDocumentChunksPagedCallable().futureCall(request);
+   *   // Do something.
+   *   for (DocumentChunk element : future.get().iterateAll()) {
+   *     // doThingsWith(element);
+   *   }
+   * }
+   * }
+ */ + public final UnaryCallable + searchDocumentChunksPagedCallable() { + return stub.searchDocumentChunksPagedCallable(); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Searches for developer knowledge across Google's developer documentation. Returns + * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s based on the user's query. There + * may be many chunks from the same [Document][google.developers.knowledge.v1.Document]. To + * retrieve full documents, use + * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] + * or + * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] + * with the [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent] returned + * in the + * [SearchDocumentChunksResponse.results][google.developers.knowledge.v1.SearchDocumentChunksResponse.results]. + * + *

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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) {
+   *   SearchDocumentChunksRequest request =
+   *       SearchDocumentChunksRequest.newBuilder()
+   *           .setQuery("query107944136")
+   *           .setPageSize(883849137)
+   *           .setPageToken("pageToken873572522")
+   *           .setFilter("filter-1274492040")
+   *           .build();
+   *   while (true) {
+   *     SearchDocumentChunksResponse response =
+   *         developerKnowledgeClient.searchDocumentChunksCallable().call(request);
+   *     for (DocumentChunk element : response.getResultsList()) {
+   *       // doThingsWith(element);
+   *     }
+   *     String nextPageToken = response.getNextPageToken();
+   *     if (!Strings.isNullOrEmpty(nextPageToken)) {
+   *       request = request.toBuilder().setPageToken(nextPageToken).build();
+   *     } else {
+   *       break;
+   *     }
+   *   }
+   * }
+   * }
+ */ + public final UnaryCallable + searchDocumentChunksCallable() { + return stub.searchDocumentChunksCallable(); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Retrieves a single document with its full Markdown content. + * + *

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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) {
+   *   DocumentName name = DocumentName.of("[DOCUMENT]");
+   *   Document response = developerKnowledgeClient.getDocument(name);
+   * }
+   * }
+ * + * @param name Required. Specifies the name of the document to retrieve. Format: + * `documents/{uri_without_scheme}` Example: + * `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final Document getDocument(DocumentName name) { + GetDocumentRequest request = + GetDocumentRequest.newBuilder().setName(name == null ? null : name.toString()).build(); + return getDocument(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Retrieves a single document with its full Markdown content. + * + *

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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) {
+   *   String name = DocumentName.of("[DOCUMENT]").toString();
+   *   Document response = developerKnowledgeClient.getDocument(name);
+   * }
+   * }
+ * + * @param name Required. Specifies the name of the document to retrieve. Format: + * `documents/{uri_without_scheme}` Example: + * `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final Document getDocument(String name) { + GetDocumentRequest request = GetDocumentRequest.newBuilder().setName(name).build(); + return getDocument(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Retrieves a single document with its full Markdown content. + * + *

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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) {
+   *   GetDocumentRequest request =
+   *       GetDocumentRequest.newBuilder()
+   *           .setName(DocumentName.of("[DOCUMENT]").toString())
+   *           .setView(DocumentView.forNumber(0))
+   *           .build();
+   *   Document response = developerKnowledgeClient.getDocument(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 Document getDocument(GetDocumentRequest request) { + return getDocumentCallable().call(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Retrieves a single document with its full Markdown content. + * + *

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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) {
+   *   GetDocumentRequest request =
+   *       GetDocumentRequest.newBuilder()
+   *           .setName(DocumentName.of("[DOCUMENT]").toString())
+   *           .setView(DocumentView.forNumber(0))
+   *           .build();
+   *   ApiFuture future =
+   *       developerKnowledgeClient.getDocumentCallable().futureCall(request);
+   *   // Do something.
+   *   Document response = future.get();
+   * }
+   * }
+ */ + public final UnaryCallable getDocumentCallable() { + return stub.getDocumentCallable(); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Retrieves multiple documents, each with its full Markdown content. + * + *

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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) {
+   *   BatchGetDocumentsRequest request =
+   *       BatchGetDocumentsRequest.newBuilder()
+   *           .addAllNames(new ArrayList())
+   *           .setView(DocumentView.forNumber(0))
+   *           .build();
+   *   BatchGetDocumentsResponse response = developerKnowledgeClient.batchGetDocuments(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 BatchGetDocumentsResponse batchGetDocuments(BatchGetDocumentsRequest request) { + return batchGetDocumentsCallable().call(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Retrieves multiple documents, each with its full Markdown content. + * + *

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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) {
+   *   BatchGetDocumentsRequest request =
+   *       BatchGetDocumentsRequest.newBuilder()
+   *           .addAllNames(new ArrayList())
+   *           .setView(DocumentView.forNumber(0))
+   *           .build();
+   *   ApiFuture future =
+   *       developerKnowledgeClient.batchGetDocumentsCallable().futureCall(request);
+   *   // Do something.
+   *   BatchGetDocumentsResponse response = future.get();
+   * }
+   * }
+ */ + public final UnaryCallable + batchGetDocumentsCallable() { + return stub.batchGetDocumentsCallable(); + } + + @Override + public final void close() { + stub.close(); + } + + @Override + public void shutdown() { + stub.shutdown(); + } + + @Override + public boolean isShutdown() { + return stub.isShutdown(); + } + + @Override + public boolean isTerminated() { + return stub.isTerminated(); + } + + @Override + public void shutdownNow() { + stub.shutdownNow(); + } + + @Override + public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException { + return stub.awaitTermination(duration, unit); + } + + public static class SearchDocumentChunksPagedResponse + extends AbstractPagedListResponse< + SearchDocumentChunksRequest, + SearchDocumentChunksResponse, + DocumentChunk, + SearchDocumentChunksPage, + SearchDocumentChunksFixedSizeCollection> { + + public static ApiFuture createAsync( + PageContext + context, + ApiFuture futureResponse) { + ApiFuture futurePage = + SearchDocumentChunksPage.createEmptyPage().createPageAsync(context, futureResponse); + return ApiFutures.transform( + futurePage, + input -> new SearchDocumentChunksPagedResponse(input), + MoreExecutors.directExecutor()); + } + + private SearchDocumentChunksPagedResponse(SearchDocumentChunksPage page) { + super(page, SearchDocumentChunksFixedSizeCollection.createEmptyCollection()); + } + } + + public static class SearchDocumentChunksPage + extends AbstractPage< + SearchDocumentChunksRequest, + SearchDocumentChunksResponse, + DocumentChunk, + SearchDocumentChunksPage> { + + private SearchDocumentChunksPage( + PageContext + context, + SearchDocumentChunksResponse response) { + super(context, response); + } + + private static SearchDocumentChunksPage createEmptyPage() { + return new SearchDocumentChunksPage(null, null); + } + + @Override + protected SearchDocumentChunksPage createPage( + PageContext + context, + SearchDocumentChunksResponse response) { + return new SearchDocumentChunksPage(context, response); + } + + @Override + public ApiFuture createPageAsync( + PageContext + context, + ApiFuture futureResponse) { + return super.createPageAsync(context, futureResponse); + } + } + + public static class SearchDocumentChunksFixedSizeCollection + extends AbstractFixedSizeCollection< + SearchDocumentChunksRequest, + SearchDocumentChunksResponse, + DocumentChunk, + SearchDocumentChunksPage, + SearchDocumentChunksFixedSizeCollection> { + + private SearchDocumentChunksFixedSizeCollection( + List pages, int collectionSize) { + super(pages, collectionSize); + } + + private static SearchDocumentChunksFixedSizeCollection createEmptyCollection() { + return new SearchDocumentChunksFixedSizeCollection(null, 0); + } + + @Override + protected SearchDocumentChunksFixedSizeCollection createCollection( + List pages, int collectionSize) { + return new SearchDocumentChunksFixedSizeCollection(pages, collectionSize); + } + } +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeSettings.java b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeSettings.java new file mode 100644 index 000000000000..2820275c4dd4 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeSettings.java @@ -0,0 +1,250 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1; + +import static com.google.developers.knowledge.v1.DeveloperKnowledgeClient.SearchDocumentChunksPagedResponse; + +import com.google.api.core.ApiFunction; +import com.google.api.core.BetaApi; +import com.google.api.gax.core.GoogleCredentialsProvider; +import com.google.api.gax.core.InstantiatingExecutorProvider; +import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider; +import com.google.api.gax.httpjson.InstantiatingHttpJsonChannelProvider; +import com.google.api.gax.rpc.ApiClientHeaderProvider; +import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.ClientSettings; +import com.google.api.gax.rpc.PagedCallSettings; +import com.google.api.gax.rpc.TransportChannelProvider; +import com.google.api.gax.rpc.UnaryCallSettings; +import com.google.developers.knowledge.v1.stub.DeveloperKnowledgeStubSettings; +import java.io.IOException; +import java.util.List; +import javax.annotation.Generated; + +// AUTO-GENERATED DOCUMENTATION AND CLASS. +/** + * Settings class to configure an instance of {@link DeveloperKnowledgeClient}. + * + *

The default instance has everything set to sensible defaults: + * + *

    + *
  • The default service address (developerknowledge.googleapis.com) and default port (443) are + * used. + *
  • Credentials are acquired automatically through Application Default Credentials. + *
  • Retries are configured for idempotent methods but not for non-idempotent methods. + *
+ * + *

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 + * [RetrySettings](https://cloud.google.com/java/docs/reference/gax/latest/com.google.api.gax.retrying.RetrySettings) + * of getDocument: + * + *

{@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
+ * DeveloperKnowledgeSettings.Builder developerKnowledgeSettingsBuilder =
+ *     DeveloperKnowledgeSettings.newBuilder();
+ * developerKnowledgeSettingsBuilder
+ *     .getDocumentSettings()
+ *     .setRetrySettings(
+ *         developerKnowledgeSettingsBuilder
+ *             .getDocumentSettings()
+ *             .getRetrySettings()
+ *             .toBuilder()
+ *             .setInitialRetryDelayDuration(Duration.ofSeconds(1))
+ *             .setInitialRpcTimeoutDuration(Duration.ofSeconds(5))
+ *             .setMaxAttempts(5)
+ *             .setMaxRetryDelayDuration(Duration.ofSeconds(30))
+ *             .setMaxRpcTimeoutDuration(Duration.ofSeconds(60))
+ *             .setRetryDelayMultiplier(1.3)
+ *             .setRpcTimeoutMultiplier(1.5)
+ *             .setTotalTimeoutDuration(Duration.ofSeconds(300))
+ *             .build());
+ * DeveloperKnowledgeSettings developerKnowledgeSettings =
+ *     developerKnowledgeSettingsBuilder.build();
+ * }
+ * + * Please refer to the [Client Side Retry + * Guide](https://docs.cloud.google.com/java/docs/client-retries) for additional support in setting + * retries. + */ +@Generated("by gapic-generator-java") +public class DeveloperKnowledgeSettings extends ClientSettings { + + /** Returns the object with the settings used for calls to searchDocumentChunks. */ + public PagedCallSettings< + SearchDocumentChunksRequest, + SearchDocumentChunksResponse, + SearchDocumentChunksPagedResponse> + searchDocumentChunksSettings() { + return ((DeveloperKnowledgeStubSettings) getStubSettings()).searchDocumentChunksSettings(); + } + + /** Returns the object with the settings used for calls to getDocument. */ + public UnaryCallSettings getDocumentSettings() { + return ((DeveloperKnowledgeStubSettings) getStubSettings()).getDocumentSettings(); + } + + /** Returns the object with the settings used for calls to batchGetDocuments. */ + public UnaryCallSettings + batchGetDocumentsSettings() { + return ((DeveloperKnowledgeStubSettings) getStubSettings()).batchGetDocumentsSettings(); + } + + public static final DeveloperKnowledgeSettings create(DeveloperKnowledgeStubSettings stub) + throws IOException { + return new DeveloperKnowledgeSettings.Builder(stub.toBuilder()).build(); + } + + /** Returns a builder for the default ExecutorProvider for this service. */ + public static InstantiatingExecutorProvider.Builder defaultExecutorProviderBuilder() { + return DeveloperKnowledgeStubSettings.defaultExecutorProviderBuilder(); + } + + /** Returns the default service endpoint. */ + public static String getDefaultEndpoint() { + return DeveloperKnowledgeStubSettings.getDefaultEndpoint(); + } + + /** Returns the default service scopes. */ + public static List getDefaultServiceScopes() { + return DeveloperKnowledgeStubSettings.getDefaultServiceScopes(); + } + + /** Returns a builder for the default credentials for this service. */ + public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilder() { + return DeveloperKnowledgeStubSettings.defaultCredentialsProviderBuilder(); + } + + /** Returns a builder for the default gRPC ChannelProvider for this service. */ + public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() { + return DeveloperKnowledgeStubSettings.defaultGrpcTransportProviderBuilder(); + } + + /** Returns a builder for the default REST ChannelProvider for this service. */ + @BetaApi + public static InstantiatingHttpJsonChannelProvider.Builder + defaultHttpJsonTransportProviderBuilder() { + return DeveloperKnowledgeStubSettings.defaultHttpJsonTransportProviderBuilder(); + } + + public static TransportChannelProvider defaultTransportChannelProvider() { + return DeveloperKnowledgeStubSettings.defaultTransportChannelProvider(); + } + + public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuilder() { + return DeveloperKnowledgeStubSettings.defaultApiClientHeaderProviderBuilder(); + } + + /** Returns a new gRPC builder for this class. */ + public static Builder newBuilder() { + return Builder.createDefault(); + } + + /** Returns a new REST builder for this class. */ + public static Builder newHttpJsonBuilder() { + return Builder.createHttpJsonDefault(); + } + + /** Returns a new builder for this class. */ + public static Builder newBuilder(ClientContext clientContext) { + return new Builder(clientContext); + } + + /** Returns a builder containing all the values of this settings class. */ + public Builder toBuilder() { + return new Builder(this); + } + + protected DeveloperKnowledgeSettings(Builder settingsBuilder) throws IOException { + super(settingsBuilder); + } + + /** Builder for DeveloperKnowledgeSettings. */ + public static class Builder extends ClientSettings.Builder { + + protected Builder() throws IOException { + this(((ClientContext) null)); + } + + protected Builder(ClientContext clientContext) { + super(DeveloperKnowledgeStubSettings.newBuilder(clientContext)); + } + + protected Builder(DeveloperKnowledgeSettings settings) { + super(settings.getStubSettings().toBuilder()); + } + + protected Builder(DeveloperKnowledgeStubSettings.Builder stubSettings) { + super(stubSettings); + } + + private static Builder createDefault() { + return new Builder(DeveloperKnowledgeStubSettings.newBuilder()); + } + + private static Builder createHttpJsonDefault() { + return new Builder(DeveloperKnowledgeStubSettings.newHttpJsonBuilder()); + } + + public DeveloperKnowledgeStubSettings.Builder getStubSettingsBuilder() { + return ((DeveloperKnowledgeStubSettings.Builder) getStubSettings()); + } + + /** + * Applies the given settings updater function to all of the unary API methods in this service. + * + *

Note: This method does not support applying settings to streaming methods. + */ + public Builder applyToAllUnaryMethods( + ApiFunction, Void> settingsUpdater) { + super.applyToAllUnaryMethods( + getStubSettingsBuilder().unaryMethodSettingsBuilders(), settingsUpdater); + return this; + } + + /** Returns the builder for the settings used for calls to searchDocumentChunks. */ + public PagedCallSettings.Builder< + SearchDocumentChunksRequest, + SearchDocumentChunksResponse, + SearchDocumentChunksPagedResponse> + searchDocumentChunksSettings() { + return getStubSettingsBuilder().searchDocumentChunksSettings(); + } + + /** Returns the builder for the settings used for calls to getDocument. */ + public UnaryCallSettings.Builder getDocumentSettings() { + return getStubSettingsBuilder().getDocumentSettings(); + } + + /** Returns the builder for the settings used for calls to batchGetDocuments. */ + public UnaryCallSettings.Builder + batchGetDocumentsSettings() { + return getStubSettingsBuilder().batchGetDocumentsSettings(); + } + + @Override + public DeveloperKnowledgeSettings build() throws IOException { + return new DeveloperKnowledgeSettings(this); + } + } +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/gapic_metadata.json b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/gapic_metadata.json new file mode 100644 index 000000000000..d78bcb450e70 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/gapic_metadata.json @@ -0,0 +1,27 @@ +{ + "schema": "1.0", + "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", + "language": "java", + "protoPackage": "google.developers.knowledge.v1", + "libraryPackage": "com.google.developers.knowledge.v1", + "services": { + "DeveloperKnowledge": { + "clients": { + "grpc": { + "libraryClient": "DeveloperKnowledgeClient", + "rpcs": { + "BatchGetDocuments": { + "methods": ["batchGetDocuments", "batchGetDocumentsCallable"] + }, + "GetDocument": { + "methods": ["getDocument", "getDocument", "getDocument", "getDocumentCallable"] + }, + "SearchDocumentChunks": { + "methods": ["searchDocumentChunks", "searchDocumentChunksPagedCallable", "searchDocumentChunksCallable"] + } + } + } + } + } + } +} \ No newline at end of file diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/package-info.java b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/package-info.java new file mode 100644 index 000000000000..3703bc44133c --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/package-info.java @@ -0,0 +1,58 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * A client to Developer Knowledge API + * + *

The interfaces provided are listed below, along with usage samples. + * + *

======================= DeveloperKnowledgeClient ======================= + * + *

Service Description: The Developer Knowledge API provides programmatic access to Google's + * public developer documentation, enabling you to integrate this knowledge base into your own + * applications and workflows. + * + *

The API is designed to be the canonical source for machine-readable access to Google's + * developer documentation. + * + *

A typical use case is to first use + * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks] + * to find relevant page URIs based on a query, and then use + * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] + * or + * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] + * to fetch the full content of the top results. + * + *

All document content is provided in Markdown format. + * + *

Sample for DeveloperKnowledgeClient: + * + *

{@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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) {
+ *   DocumentName name = DocumentName.of("[DOCUMENT]");
+ *   Document response = developerKnowledgeClient.getDocument(name);
+ * }
+ * }
+ */ +@Generated("by gapic-generator-java") +package com.google.developers.knowledge.v1; + +import javax.annotation.Generated; diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/DeveloperKnowledgeStub.java b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/DeveloperKnowledgeStub.java new file mode 100644 index 000000000000..47aa43ce0ba9 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/DeveloperKnowledgeStub.java @@ -0,0 +1,61 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.stub; + +import static com.google.developers.knowledge.v1.DeveloperKnowledgeClient.SearchDocumentChunksPagedResponse; + +import com.google.api.gax.core.BackgroundResource; +import com.google.api.gax.rpc.UnaryCallable; +import com.google.developers.knowledge.v1.BatchGetDocumentsRequest; +import com.google.developers.knowledge.v1.BatchGetDocumentsResponse; +import com.google.developers.knowledge.v1.Document; +import com.google.developers.knowledge.v1.GetDocumentRequest; +import com.google.developers.knowledge.v1.SearchDocumentChunksRequest; +import com.google.developers.knowledge.v1.SearchDocumentChunksResponse; +import javax.annotation.Generated; + +// AUTO-GENERATED DOCUMENTATION AND CLASS. +/** + * Base stub class for the DeveloperKnowledge service API. + * + *

This class is for advanced usage and reflects the underlying API directly. + */ +@Generated("by gapic-generator-java") +public abstract class DeveloperKnowledgeStub implements BackgroundResource { + + public UnaryCallable + searchDocumentChunksPagedCallable() { + throw new UnsupportedOperationException("Not implemented: searchDocumentChunksPagedCallable()"); + } + + public UnaryCallable + searchDocumentChunksCallable() { + throw new UnsupportedOperationException("Not implemented: searchDocumentChunksCallable()"); + } + + public UnaryCallable getDocumentCallable() { + throw new UnsupportedOperationException("Not implemented: getDocumentCallable()"); + } + + public UnaryCallable + batchGetDocumentsCallable() { + throw new UnsupportedOperationException("Not implemented: batchGetDocumentsCallable()"); + } + + @Override + public abstract void close(); +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/DeveloperKnowledgeStubSettings.java b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/DeveloperKnowledgeStubSettings.java new file mode 100644 index 000000000000..9ba738db9934 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/DeveloperKnowledgeStubSettings.java @@ -0,0 +1,497 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.stub; + +import static com.google.developers.knowledge.v1.DeveloperKnowledgeClient.SearchDocumentChunksPagedResponse; + +import com.google.api.core.ApiFunction; +import com.google.api.core.ApiFuture; +import com.google.api.core.BetaApi; +import com.google.api.core.ObsoleteApi; +import com.google.api.gax.core.GaxProperties; +import com.google.api.gax.core.GoogleCredentialsProvider; +import com.google.api.gax.core.InstantiatingExecutorProvider; +import com.google.api.gax.grpc.GaxGrpcProperties; +import com.google.api.gax.grpc.GrpcTransportChannel; +import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider; +import com.google.api.gax.httpjson.GaxHttpJsonProperties; +import com.google.api.gax.httpjson.HttpJsonTransportChannel; +import com.google.api.gax.httpjson.InstantiatingHttpJsonChannelProvider; +import com.google.api.gax.retrying.RetrySettings; +import com.google.api.gax.rpc.ApiCallContext; +import com.google.api.gax.rpc.ApiClientHeaderProvider; +import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.LibraryMetadata; +import com.google.api.gax.rpc.PageContext; +import com.google.api.gax.rpc.PagedCallSettings; +import com.google.api.gax.rpc.PagedListDescriptor; +import com.google.api.gax.rpc.PagedListResponseFactory; +import com.google.api.gax.rpc.StatusCode; +import com.google.api.gax.rpc.StubSettings; +import com.google.api.gax.rpc.TransportChannelProvider; +import com.google.api.gax.rpc.UnaryCallSettings; +import com.google.api.gax.rpc.UnaryCallable; +import com.google.common.collect.ImmutableList; +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.ImmutableSet; +import com.google.common.collect.Lists; +import com.google.developers.knowledge.v1.BatchGetDocumentsRequest; +import com.google.developers.knowledge.v1.BatchGetDocumentsResponse; +import com.google.developers.knowledge.v1.Document; +import com.google.developers.knowledge.v1.DocumentChunk; +import com.google.developers.knowledge.v1.GetDocumentRequest; +import com.google.developers.knowledge.v1.SearchDocumentChunksRequest; +import com.google.developers.knowledge.v1.SearchDocumentChunksResponse; +import java.io.IOException; +import java.time.Duration; +import java.util.List; +import javax.annotation.Generated; + +// AUTO-GENERATED DOCUMENTATION AND CLASS. +/** + * Settings class to configure an instance of {@link DeveloperKnowledgeStub}. + * + *

The default instance has everything set to sensible defaults: + * + *

    + *
  • The default service address (developerknowledge.googleapis.com) and default port (443) are + * used. + *
  • Credentials are acquired automatically through Application Default Credentials. + *
  • Retries are configured for idempotent methods but not for non-idempotent methods. + *
+ * + *

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 + * [RetrySettings](https://cloud.google.com/java/docs/reference/gax/latest/com.google.api.gax.retrying.RetrySettings) + * of getDocument: + * + *

{@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
+ * DeveloperKnowledgeStubSettings.Builder developerKnowledgeSettingsBuilder =
+ *     DeveloperKnowledgeStubSettings.newBuilder();
+ * developerKnowledgeSettingsBuilder
+ *     .getDocumentSettings()
+ *     .setRetrySettings(
+ *         developerKnowledgeSettingsBuilder
+ *             .getDocumentSettings()
+ *             .getRetrySettings()
+ *             .toBuilder()
+ *             .setInitialRetryDelayDuration(Duration.ofSeconds(1))
+ *             .setInitialRpcTimeoutDuration(Duration.ofSeconds(5))
+ *             .setMaxAttempts(5)
+ *             .setMaxRetryDelayDuration(Duration.ofSeconds(30))
+ *             .setMaxRpcTimeoutDuration(Duration.ofSeconds(60))
+ *             .setRetryDelayMultiplier(1.3)
+ *             .setRpcTimeoutMultiplier(1.5)
+ *             .setTotalTimeoutDuration(Duration.ofSeconds(300))
+ *             .build());
+ * DeveloperKnowledgeStubSettings developerKnowledgeSettings =
+ *     developerKnowledgeSettingsBuilder.build();
+ * }
+ * + * Please refer to the [Client Side Retry + * Guide](https://docs.cloud.google.com/java/docs/client-retries) for additional support in setting + * retries. + */ +@Generated("by gapic-generator-java") +@SuppressWarnings("CanonicalDuration") +public class DeveloperKnowledgeStubSettings extends StubSettings { + /** The default scopes of the service. */ + private static final ImmutableList DEFAULT_SERVICE_SCOPES = + ImmutableList.builder().add("https://www.googleapis.com/auth/cloud-platform").build(); + + private final PagedCallSettings< + SearchDocumentChunksRequest, + SearchDocumentChunksResponse, + SearchDocumentChunksPagedResponse> + searchDocumentChunksSettings; + private final UnaryCallSettings getDocumentSettings; + private final UnaryCallSettings + batchGetDocumentsSettings; + + private static final PagedListDescriptor< + SearchDocumentChunksRequest, SearchDocumentChunksResponse, DocumentChunk> + SEARCH_DOCUMENT_CHUNKS_PAGE_STR_DESC = + new PagedListDescriptor< + SearchDocumentChunksRequest, SearchDocumentChunksResponse, DocumentChunk>() { + @Override + public String emptyToken() { + return ""; + } + + @Override + public SearchDocumentChunksRequest injectToken( + SearchDocumentChunksRequest payload, String token) { + return SearchDocumentChunksRequest.newBuilder(payload).setPageToken(token).build(); + } + + @Override + public SearchDocumentChunksRequest injectPageSize( + SearchDocumentChunksRequest payload, int pageSize) { + return SearchDocumentChunksRequest.newBuilder(payload).setPageSize(pageSize).build(); + } + + @Override + public Integer extractPageSize(SearchDocumentChunksRequest payload) { + return payload.getPageSize(); + } + + @Override + public String extractNextToken(SearchDocumentChunksResponse payload) { + return payload.getNextPageToken(); + } + + @Override + public Iterable extractResources(SearchDocumentChunksResponse payload) { + return payload.getResultsList(); + } + }; + + private static final PagedListResponseFactory< + SearchDocumentChunksRequest, + SearchDocumentChunksResponse, + SearchDocumentChunksPagedResponse> + SEARCH_DOCUMENT_CHUNKS_PAGE_STR_FACT = + new PagedListResponseFactory< + SearchDocumentChunksRequest, + SearchDocumentChunksResponse, + SearchDocumentChunksPagedResponse>() { + @Override + public ApiFuture getFuturePagedResponse( + UnaryCallable callable, + SearchDocumentChunksRequest request, + ApiCallContext context, + ApiFuture futureResponse) { + PageContext + pageContext = + PageContext.create( + callable, SEARCH_DOCUMENT_CHUNKS_PAGE_STR_DESC, request, context); + return SearchDocumentChunksPagedResponse.createAsync(pageContext, futureResponse); + } + }; + + /** Returns the object with the settings used for calls to searchDocumentChunks. */ + public PagedCallSettings< + SearchDocumentChunksRequest, + SearchDocumentChunksResponse, + SearchDocumentChunksPagedResponse> + searchDocumentChunksSettings() { + return searchDocumentChunksSettings; + } + + /** Returns the object with the settings used for calls to getDocument. */ + public UnaryCallSettings getDocumentSettings() { + return getDocumentSettings; + } + + /** Returns the object with the settings used for calls to batchGetDocuments. */ + public UnaryCallSettings + batchGetDocumentsSettings() { + return batchGetDocumentsSettings; + } + + public DeveloperKnowledgeStub createStub() throws IOException { + if (getTransportChannelProvider() + .getTransportName() + .equals(GrpcTransportChannel.getGrpcTransportName())) { + return GrpcDeveloperKnowledgeStub.create(this); + } + if (getTransportChannelProvider() + .getTransportName() + .equals(HttpJsonTransportChannel.getHttpJsonTransportName())) { + return HttpJsonDeveloperKnowledgeStub.create(this); + } + throw new UnsupportedOperationException( + String.format( + "Transport not supported: %s", getTransportChannelProvider().getTransportName())); + } + + /** Returns the default service name. */ + @Override + public String getServiceName() { + return "developerknowledge"; + } + + /** Returns a builder for the default ExecutorProvider for this service. */ + public static InstantiatingExecutorProvider.Builder defaultExecutorProviderBuilder() { + return InstantiatingExecutorProvider.newBuilder(); + } + + /** Returns the default service endpoint. */ + @ObsoleteApi("Use getEndpoint() instead") + public static String getDefaultEndpoint() { + return "developerknowledge.googleapis.com:443"; + } + + /** Returns the default mTLS service endpoint. */ + public static String getDefaultMtlsEndpoint() { + return "developerknowledge.mtls.googleapis.com:443"; + } + + /** Returns the default service scopes. */ + public static List getDefaultServiceScopes() { + return DEFAULT_SERVICE_SCOPES; + } + + /** Returns a builder for the default credentials for this service. */ + public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilder() { + return GoogleCredentialsProvider.newBuilder() + .setScopesToApply(DEFAULT_SERVICE_SCOPES) + .setUseJwtAccessWithScope(true); + } + + /** Returns a builder for the default gRPC ChannelProvider for this service. */ + public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() { + return InstantiatingGrpcChannelProvider.newBuilder() + .setMaxInboundMessageSize(Integer.MAX_VALUE); + } + + /** Returns a builder for the default REST ChannelProvider for this service. */ + @BetaApi + public static InstantiatingHttpJsonChannelProvider.Builder + defaultHttpJsonTransportProviderBuilder() { + return InstantiatingHttpJsonChannelProvider.newBuilder(); + } + + public static TransportChannelProvider defaultTransportChannelProvider() { + return defaultGrpcTransportProviderBuilder().build(); + } + + public static ApiClientHeaderProvider.Builder defaultGrpcApiClientHeaderProviderBuilder() { + return ApiClientHeaderProvider.newBuilder() + .setGeneratedLibToken( + "gapic", GaxProperties.getLibraryVersion(DeveloperKnowledgeStubSettings.class)) + .setTransportToken( + GaxGrpcProperties.getGrpcTokenName(), GaxGrpcProperties.getGrpcVersion()); + } + + public static ApiClientHeaderProvider.Builder defaultHttpJsonApiClientHeaderProviderBuilder() { + return ApiClientHeaderProvider.newBuilder() + .setGeneratedLibToken( + "gapic", GaxProperties.getLibraryVersion(DeveloperKnowledgeStubSettings.class)) + .setTransportToken( + GaxHttpJsonProperties.getHttpJsonTokenName(), + GaxHttpJsonProperties.getHttpJsonVersion()); + } + + public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuilder() { + return DeveloperKnowledgeStubSettings.defaultGrpcApiClientHeaderProviderBuilder(); + } + + /** Returns a new gRPC builder for this class. */ + public static Builder newBuilder() { + return Builder.createDefault(); + } + + /** Returns a new REST builder for this class. */ + public static Builder newHttpJsonBuilder() { + return Builder.createHttpJsonDefault(); + } + + /** Returns a new builder for this class. */ + public static Builder newBuilder(ClientContext clientContext) { + return new Builder(clientContext); + } + + /** Returns a builder containing all the values of this settings class. */ + public Builder toBuilder() { + return new Builder(this); + } + + protected DeveloperKnowledgeStubSettings(Builder settingsBuilder) throws IOException { + super(settingsBuilder); + + searchDocumentChunksSettings = settingsBuilder.searchDocumentChunksSettings().build(); + getDocumentSettings = settingsBuilder.getDocumentSettings().build(); + batchGetDocumentsSettings = settingsBuilder.batchGetDocumentsSettings().build(); + } + + @Override + protected LibraryMetadata getLibraryMetadata() { + return LibraryMetadata.newBuilder() + .setArtifactName("com.google.cloud:google-cloud-developer-knowledge") + .setRepository("googleapis/google-cloud-java") + .setVersion(Version.VERSION) + .build(); + } + + /** Builder for DeveloperKnowledgeStubSettings. */ + public static class Builder + extends StubSettings.Builder { + private final ImmutableList> unaryMethodSettingsBuilders; + private final PagedCallSettings.Builder< + SearchDocumentChunksRequest, + SearchDocumentChunksResponse, + SearchDocumentChunksPagedResponse> + searchDocumentChunksSettings; + private final UnaryCallSettings.Builder getDocumentSettings; + private final UnaryCallSettings.Builder + batchGetDocumentsSettings; + private static final ImmutableMap> + RETRYABLE_CODE_DEFINITIONS; + + static { + ImmutableMap.Builder> definitions = + ImmutableMap.builder(); + definitions.put("no_retry_codes", ImmutableSet.copyOf(Lists.newArrayList())); + definitions.put( + "retry_policy_0_codes", + ImmutableSet.copyOf(Lists.newArrayList(StatusCode.Code.UNAVAILABLE))); + RETRYABLE_CODE_DEFINITIONS = definitions.build(); + } + + private static final ImmutableMap RETRY_PARAM_DEFINITIONS; + + static { + ImmutableMap.Builder definitions = ImmutableMap.builder(); + RetrySettings settings = null; + settings = RetrySettings.newBuilder().setRpcTimeoutMultiplier(1.0).build(); + definitions.put("no_retry_params", settings); + settings = + RetrySettings.newBuilder() + .setInitialRetryDelayDuration(Duration.ofMillis(1000L)) + .setRetryDelayMultiplier(1.3) + .setMaxRetryDelayDuration(Duration.ofMillis(10000L)) + .setInitialRpcTimeoutDuration(Duration.ofMillis(60000L)) + .setRpcTimeoutMultiplier(1.0) + .setMaxRpcTimeoutDuration(Duration.ofMillis(60000L)) + .setTotalTimeoutDuration(Duration.ofMillis(60000L)) + .build(); + definitions.put("retry_policy_0_params", settings); + RETRY_PARAM_DEFINITIONS = definitions.build(); + } + + protected Builder() { + this(((ClientContext) null)); + } + + protected Builder(ClientContext clientContext) { + super(clientContext); + + searchDocumentChunksSettings = + PagedCallSettings.newBuilder(SEARCH_DOCUMENT_CHUNKS_PAGE_STR_FACT); + getDocumentSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); + batchGetDocumentsSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); + + unaryMethodSettingsBuilders = + ImmutableList.>of( + searchDocumentChunksSettings, getDocumentSettings, batchGetDocumentsSettings); + initDefaults(this); + } + + protected Builder(DeveloperKnowledgeStubSettings settings) { + super(settings); + + searchDocumentChunksSettings = settings.searchDocumentChunksSettings.toBuilder(); + getDocumentSettings = settings.getDocumentSettings.toBuilder(); + batchGetDocumentsSettings = settings.batchGetDocumentsSettings.toBuilder(); + + unaryMethodSettingsBuilders = + ImmutableList.>of( + searchDocumentChunksSettings, getDocumentSettings, batchGetDocumentsSettings); + } + + private static Builder createDefault() { + Builder builder = new Builder(((ClientContext) null)); + + builder.setTransportChannelProvider(defaultTransportChannelProvider()); + builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build()); + builder.setInternalHeaderProvider(defaultApiClientHeaderProviderBuilder().build()); + builder.setMtlsEndpoint(getDefaultMtlsEndpoint()); + builder.setSwitchToMtlsEndpointAllowed(true); + + return initDefaults(builder); + } + + private static Builder createHttpJsonDefault() { + Builder builder = new Builder(((ClientContext) null)); + + builder.setTransportChannelProvider(defaultHttpJsonTransportProviderBuilder().build()); + builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build()); + builder.setInternalHeaderProvider(defaultHttpJsonApiClientHeaderProviderBuilder().build()); + builder.setMtlsEndpoint(getDefaultMtlsEndpoint()); + builder.setSwitchToMtlsEndpointAllowed(true); + + return initDefaults(builder); + } + + private static Builder initDefaults(Builder builder) { + builder + .searchDocumentChunksSettings() + .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("no_retry_codes")) + .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("no_retry_params")); + + builder + .getDocumentSettings() + .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_0_codes")) + .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_0_params")); + + builder + .batchGetDocumentsSettings() + .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_0_codes")) + .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_0_params")); + + return builder; + } + + /** + * Applies the given settings updater function to all of the unary API methods in this service. + * + *

Note: This method does not support applying settings to streaming methods. + */ + public Builder applyToAllUnaryMethods( + ApiFunction, Void> settingsUpdater) { + super.applyToAllUnaryMethods(unaryMethodSettingsBuilders, settingsUpdater); + return this; + } + + public ImmutableList> unaryMethodSettingsBuilders() { + return unaryMethodSettingsBuilders; + } + + /** Returns the builder for the settings used for calls to searchDocumentChunks. */ + public PagedCallSettings.Builder< + SearchDocumentChunksRequest, + SearchDocumentChunksResponse, + SearchDocumentChunksPagedResponse> + searchDocumentChunksSettings() { + return searchDocumentChunksSettings; + } + + /** Returns the builder for the settings used for calls to getDocument. */ + public UnaryCallSettings.Builder getDocumentSettings() { + return getDocumentSettings; + } + + /** Returns the builder for the settings used for calls to batchGetDocuments. */ + public UnaryCallSettings.Builder + batchGetDocumentsSettings() { + return batchGetDocumentsSettings; + } + + @Override + public DeveloperKnowledgeStubSettings build() throws IOException { + return new DeveloperKnowledgeStubSettings(this); + } + } +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/GrpcDeveloperKnowledgeCallableFactory.java b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/GrpcDeveloperKnowledgeCallableFactory.java new file mode 100644 index 000000000000..a5d0ce3866a1 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/GrpcDeveloperKnowledgeCallableFactory.java @@ -0,0 +1,113 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.stub; + +import com.google.api.gax.grpc.GrpcCallSettings; +import com.google.api.gax.grpc.GrpcCallableFactory; +import com.google.api.gax.grpc.GrpcStubCallableFactory; +import com.google.api.gax.rpc.BatchingCallSettings; +import com.google.api.gax.rpc.BidiStreamingCallable; +import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.ClientStreamingCallable; +import com.google.api.gax.rpc.OperationCallSettings; +import com.google.api.gax.rpc.OperationCallable; +import com.google.api.gax.rpc.PagedCallSettings; +import com.google.api.gax.rpc.ServerStreamingCallSettings; +import com.google.api.gax.rpc.ServerStreamingCallable; +import com.google.api.gax.rpc.StreamingCallSettings; +import com.google.api.gax.rpc.UnaryCallSettings; +import com.google.api.gax.rpc.UnaryCallable; +import com.google.longrunning.Operation; +import com.google.longrunning.stub.OperationsStub; +import javax.annotation.Generated; + +// AUTO-GENERATED DOCUMENTATION AND CLASS. +/** + * gRPC callable factory implementation for the DeveloperKnowledge service API. + * + *

This class is for advanced usage. + */ +@Generated("by gapic-generator-java") +public class GrpcDeveloperKnowledgeCallableFactory implements GrpcStubCallableFactory { + + @Override + public UnaryCallable createUnaryCallable( + GrpcCallSettings grpcCallSettings, + UnaryCallSettings callSettings, + ClientContext clientContext) { + return GrpcCallableFactory.createUnaryCallable(grpcCallSettings, callSettings, clientContext); + } + + @Override + public + UnaryCallable createPagedCallable( + GrpcCallSettings grpcCallSettings, + PagedCallSettings callSettings, + ClientContext clientContext) { + return GrpcCallableFactory.createPagedCallable(grpcCallSettings, callSettings, clientContext); + } + + @Override + public UnaryCallable createBatchingCallable( + GrpcCallSettings grpcCallSettings, + BatchingCallSettings callSettings, + ClientContext clientContext) { + return GrpcCallableFactory.createBatchingCallable( + grpcCallSettings, callSettings, clientContext); + } + + @Override + public + OperationCallable createOperationCallable( + GrpcCallSettings grpcCallSettings, + OperationCallSettings callSettings, + ClientContext clientContext, + OperationsStub operationsStub) { + return GrpcCallableFactory.createOperationCallable( + grpcCallSettings, callSettings, clientContext, operationsStub); + } + + @Override + public + BidiStreamingCallable createBidiStreamingCallable( + GrpcCallSettings grpcCallSettings, + StreamingCallSettings callSettings, + ClientContext clientContext) { + return GrpcCallableFactory.createBidiStreamingCallable( + grpcCallSettings, callSettings, clientContext); + } + + @Override + public + ServerStreamingCallable createServerStreamingCallable( + GrpcCallSettings grpcCallSettings, + ServerStreamingCallSettings callSettings, + ClientContext clientContext) { + return GrpcCallableFactory.createServerStreamingCallable( + grpcCallSettings, callSettings, clientContext); + } + + @Override + public + ClientStreamingCallable createClientStreamingCallable( + GrpcCallSettings grpcCallSettings, + StreamingCallSettings callSettings, + ClientContext clientContext) { + return GrpcCallableFactory.createClientStreamingCallable( + grpcCallSettings, callSettings, clientContext); + } +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/GrpcDeveloperKnowledgeStub.java b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/GrpcDeveloperKnowledgeStub.java new file mode 100644 index 000000000000..df06e721edce --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/GrpcDeveloperKnowledgeStub.java @@ -0,0 +1,243 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.stub; + +import static com.google.developers.knowledge.v1.DeveloperKnowledgeClient.SearchDocumentChunksPagedResponse; + +import com.google.api.gax.core.BackgroundResource; +import com.google.api.gax.core.BackgroundResourceAggregation; +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.developers.knowledge.v1.BatchGetDocumentsRequest; +import com.google.developers.knowledge.v1.BatchGetDocumentsResponse; +import com.google.developers.knowledge.v1.Document; +import com.google.developers.knowledge.v1.GetDocumentRequest; +import com.google.developers.knowledge.v1.SearchDocumentChunksRequest; +import com.google.developers.knowledge.v1.SearchDocumentChunksResponse; +import com.google.longrunning.stub.GrpcOperationsStub; +import io.grpc.MethodDescriptor; +import io.grpc.protobuf.ProtoUtils; +import java.io.IOException; +import java.util.concurrent.TimeUnit; +import javax.annotation.Generated; + +// AUTO-GENERATED DOCUMENTATION AND CLASS. +/** + * gRPC stub implementation for the DeveloperKnowledge service API. + * + *

This class is for advanced usage and reflects the underlying API directly. + */ +@Generated("by gapic-generator-java") +public class GrpcDeveloperKnowledgeStub extends DeveloperKnowledgeStub { + private static final MethodDescriptor + searchDocumentChunksMethodDescriptor = + MethodDescriptor.newBuilder() + .setType(MethodDescriptor.MethodType.UNARY) + .setFullMethodName( + "google.developers.knowledge.v1.DeveloperKnowledge/SearchDocumentChunks") + .setRequestMarshaller( + ProtoUtils.marshaller(SearchDocumentChunksRequest.getDefaultInstance())) + .setResponseMarshaller( + ProtoUtils.marshaller(SearchDocumentChunksResponse.getDefaultInstance())) + .setSampledToLocalTracing(true) + .build(); + + private static final MethodDescriptor getDocumentMethodDescriptor = + MethodDescriptor.newBuilder() + .setType(MethodDescriptor.MethodType.UNARY) + .setFullMethodName("google.developers.knowledge.v1.DeveloperKnowledge/GetDocument") + .setRequestMarshaller(ProtoUtils.marshaller(GetDocumentRequest.getDefaultInstance())) + .setResponseMarshaller(ProtoUtils.marshaller(Document.getDefaultInstance())) + .setSampledToLocalTracing(true) + .build(); + + private static final MethodDescriptor + batchGetDocumentsMethodDescriptor = + MethodDescriptor.newBuilder() + .setType(MethodDescriptor.MethodType.UNARY) + .setFullMethodName( + "google.developers.knowledge.v1.DeveloperKnowledge/BatchGetDocuments") + .setRequestMarshaller( + ProtoUtils.marshaller(BatchGetDocumentsRequest.getDefaultInstance())) + .setResponseMarshaller( + ProtoUtils.marshaller(BatchGetDocumentsResponse.getDefaultInstance())) + .setSampledToLocalTracing(true) + .build(); + + private final UnaryCallable + searchDocumentChunksCallable; + private final UnaryCallable + searchDocumentChunksPagedCallable; + private final UnaryCallable getDocumentCallable; + private final UnaryCallable + batchGetDocumentsCallable; + + private final BackgroundResource backgroundResources; + private final GrpcOperationsStub operationsStub; + private final GrpcStubCallableFactory callableFactory; + + public static final GrpcDeveloperKnowledgeStub create(DeveloperKnowledgeStubSettings settings) + throws IOException { + return new GrpcDeveloperKnowledgeStub(settings, ClientContext.create(settings)); + } + + public static final GrpcDeveloperKnowledgeStub create(ClientContext clientContext) + throws IOException { + return new GrpcDeveloperKnowledgeStub( + DeveloperKnowledgeStubSettings.newBuilder().build(), clientContext); + } + + public static final GrpcDeveloperKnowledgeStub create( + ClientContext clientContext, GrpcStubCallableFactory callableFactory) throws IOException { + return new GrpcDeveloperKnowledgeStub( + DeveloperKnowledgeStubSettings.newBuilder().build(), clientContext, callableFactory); + } + + /** + * Constructs an instance of GrpcDeveloperKnowledgeStub, using the given settings. This is + * protected so that it is easy to make a subclass, but otherwise, the static factory methods + * should be preferred. + */ + protected GrpcDeveloperKnowledgeStub( + DeveloperKnowledgeStubSettings settings, ClientContext clientContext) throws IOException { + this(settings, clientContext, new GrpcDeveloperKnowledgeCallableFactory()); + } + + /** + * Constructs an instance of GrpcDeveloperKnowledgeStub, using the given settings. This is + * protected so that it is easy to make a subclass, but otherwise, the static factory methods + * should be preferred. + */ + protected GrpcDeveloperKnowledgeStub( + DeveloperKnowledgeStubSettings settings, + ClientContext clientContext, + GrpcStubCallableFactory callableFactory) + throws IOException { + this.callableFactory = callableFactory; + this.operationsStub = GrpcOperationsStub.create(clientContext, callableFactory); + + GrpcCallSettings + searchDocumentChunksTransportSettings = + GrpcCallSettings.newBuilder() + .setMethodDescriptor(searchDocumentChunksMethodDescriptor) + .build(); + GrpcCallSettings getDocumentTransportSettings = + GrpcCallSettings.newBuilder() + .setMethodDescriptor(getDocumentMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add("name", String.valueOf(request.getName())); + return builder.build(); + }) + .setResourceNameExtractor(request -> request.getName()) + .build(); + GrpcCallSettings + batchGetDocumentsTransportSettings = + GrpcCallSettings.newBuilder() + .setMethodDescriptor(batchGetDocumentsMethodDescriptor) + .build(); + + this.searchDocumentChunksCallable = + callableFactory.createUnaryCallable( + searchDocumentChunksTransportSettings, + settings.searchDocumentChunksSettings(), + clientContext); + this.searchDocumentChunksPagedCallable = + callableFactory.createPagedCallable( + searchDocumentChunksTransportSettings, + settings.searchDocumentChunksSettings(), + clientContext); + this.getDocumentCallable = + callableFactory.createUnaryCallable( + getDocumentTransportSettings, settings.getDocumentSettings(), clientContext); + this.batchGetDocumentsCallable = + callableFactory.createUnaryCallable( + batchGetDocumentsTransportSettings, + settings.batchGetDocumentsSettings(), + clientContext); + + this.backgroundResources = + new BackgroundResourceAggregation(clientContext.getBackgroundResources()); + } + + public GrpcOperationsStub getOperationsStub() { + return operationsStub; + } + + @Override + public UnaryCallable + searchDocumentChunksCallable() { + return searchDocumentChunksCallable; + } + + @Override + public UnaryCallable + searchDocumentChunksPagedCallable() { + return searchDocumentChunksPagedCallable; + } + + @Override + public UnaryCallable getDocumentCallable() { + return getDocumentCallable; + } + + @Override + public UnaryCallable + batchGetDocumentsCallable() { + return batchGetDocumentsCallable; + } + + @Override + public final void close() { + try { + backgroundResources.close(); + } catch (RuntimeException e) { + throw e; + } catch (Exception e) { + throw new IllegalStateException("Failed to close resource", e); + } + } + + @Override + public void shutdown() { + backgroundResources.shutdown(); + } + + @Override + public boolean isShutdown() { + return backgroundResources.isShutdown(); + } + + @Override + public boolean isTerminated() { + return backgroundResources.isTerminated(); + } + + @Override + public void shutdownNow() { + backgroundResources.shutdownNow(); + } + + @Override + public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException { + return backgroundResources.awaitTermination(duration, unit); + } +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/HttpJsonDeveloperKnowledgeCallableFactory.java b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/HttpJsonDeveloperKnowledgeCallableFactory.java new file mode 100644 index 000000000000..c221dd33eded --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/HttpJsonDeveloperKnowledgeCallableFactory.java @@ -0,0 +1,101 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.stub; + +import com.google.api.gax.httpjson.HttpJsonCallSettings; +import com.google.api.gax.httpjson.HttpJsonCallableFactory; +import com.google.api.gax.httpjson.HttpJsonOperationSnapshotCallable; +import com.google.api.gax.httpjson.HttpJsonStubCallableFactory; +import com.google.api.gax.httpjson.longrunning.stub.OperationsStub; +import com.google.api.gax.rpc.BatchingCallSettings; +import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.OperationCallSettings; +import com.google.api.gax.rpc.OperationCallable; +import com.google.api.gax.rpc.PagedCallSettings; +import com.google.api.gax.rpc.ServerStreamingCallSettings; +import com.google.api.gax.rpc.ServerStreamingCallable; +import com.google.api.gax.rpc.UnaryCallSettings; +import com.google.api.gax.rpc.UnaryCallable; +import com.google.longrunning.Operation; +import javax.annotation.Generated; + +// AUTO-GENERATED DOCUMENTATION AND CLASS. +/** + * REST callable factory implementation for the DeveloperKnowledge service API. + * + *

This class is for advanced usage. + */ +@Generated("by gapic-generator-java") +public class HttpJsonDeveloperKnowledgeCallableFactory + implements HttpJsonStubCallableFactory { + + @Override + public UnaryCallable createUnaryCallable( + HttpJsonCallSettings httpJsonCallSettings, + UnaryCallSettings callSettings, + ClientContext clientContext) { + return HttpJsonCallableFactory.createUnaryCallable( + httpJsonCallSettings, callSettings, clientContext); + } + + @Override + public + UnaryCallable createPagedCallable( + HttpJsonCallSettings httpJsonCallSettings, + PagedCallSettings callSettings, + ClientContext clientContext) { + return HttpJsonCallableFactory.createPagedCallable( + httpJsonCallSettings, callSettings, clientContext); + } + + @Override + public UnaryCallable createBatchingCallable( + HttpJsonCallSettings httpJsonCallSettings, + BatchingCallSettings callSettings, + ClientContext clientContext) { + return HttpJsonCallableFactory.createBatchingCallable( + httpJsonCallSettings, callSettings, clientContext); + } + + @Override + public + OperationCallable createOperationCallable( + HttpJsonCallSettings httpJsonCallSettings, + OperationCallSettings callSettings, + ClientContext clientContext, + OperationsStub operationsStub) { + UnaryCallable innerCallable = + HttpJsonCallableFactory.createBaseUnaryCallable( + httpJsonCallSettings, callSettings.getInitialCallSettings(), clientContext); + HttpJsonOperationSnapshotCallable initialCallable = + new HttpJsonOperationSnapshotCallable( + innerCallable, + httpJsonCallSettings.getMethodDescriptor().getOperationSnapshotFactory()); + return HttpJsonCallableFactory.createOperationCallable( + callSettings, clientContext, operationsStub.longRunningClient(), initialCallable); + } + + @Override + public + ServerStreamingCallable createServerStreamingCallable( + HttpJsonCallSettings httpJsonCallSettings, + ServerStreamingCallSettings callSettings, + ClientContext clientContext) { + return HttpJsonCallableFactory.createServerStreamingCallable( + httpJsonCallSettings, callSettings, clientContext); + } +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/HttpJsonDeveloperKnowledgeStub.java b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/HttpJsonDeveloperKnowledgeStub.java new file mode 100644 index 000000000000..ef94408e1ad8 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/HttpJsonDeveloperKnowledgeStub.java @@ -0,0 +1,337 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.stub; + +import static com.google.developers.knowledge.v1.DeveloperKnowledgeClient.SearchDocumentChunksPagedResponse; + +import com.google.api.core.InternalApi; +import com.google.api.gax.core.BackgroundResource; +import com.google.api.gax.core.BackgroundResourceAggregation; +import com.google.api.gax.httpjson.ApiMethodDescriptor; +import com.google.api.gax.httpjson.HttpJsonCallSettings; +import com.google.api.gax.httpjson.HttpJsonStubCallableFactory; +import com.google.api.gax.httpjson.ProtoMessageRequestFormatter; +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.developers.knowledge.v1.BatchGetDocumentsRequest; +import com.google.developers.knowledge.v1.BatchGetDocumentsResponse; +import com.google.developers.knowledge.v1.Document; +import com.google.developers.knowledge.v1.GetDocumentRequest; +import com.google.developers.knowledge.v1.SearchDocumentChunksRequest; +import com.google.developers.knowledge.v1.SearchDocumentChunksResponse; +import com.google.protobuf.TypeRegistry; +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.concurrent.TimeUnit; +import javax.annotation.Generated; + +// AUTO-GENERATED DOCUMENTATION AND CLASS. +/** + * REST stub implementation for the DeveloperKnowledge service API. + * + *

This class is for advanced usage and reflects the underlying API directly. + */ +@Generated("by gapic-generator-java") +public class HttpJsonDeveloperKnowledgeStub extends DeveloperKnowledgeStub { + private static final TypeRegistry typeRegistry = TypeRegistry.newBuilder().build(); + + private static final ApiMethodDescriptor< + SearchDocumentChunksRequest, SearchDocumentChunksResponse> + searchDocumentChunksMethodDescriptor = + ApiMethodDescriptor + .newBuilder() + .setFullMethodName( + "google.developers.knowledge.v1.DeveloperKnowledge/SearchDocumentChunks") + .setHttpMethod("GET") + .setType(ApiMethodDescriptor.MethodType.UNARY) + .setRequestFormatter( + ProtoMessageRequestFormatter.newBuilder() + .setPath( + "/v1/documents:searchDocumentChunks", + request -> { + Map fields = new HashMap<>(); + ProtoRestSerializer serializer = + ProtoRestSerializer.create(); + return fields; + }) + .setQueryParamsExtractor( + request -> { + Map> fields = new HashMap<>(); + ProtoRestSerializer serializer = + ProtoRestSerializer.create(); + serializer.putQueryParam(fields, "filter", request.getFilter()); + serializer.putQueryParam(fields, "pageSize", request.getPageSize()); + serializer.putQueryParam(fields, "pageToken", request.getPageToken()); + serializer.putQueryParam(fields, "query", request.getQuery()); + serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); + return fields; + }) + .setRequestBodyExtractor(request -> null) + .build()) + .setResponseParser( + ProtoMessageResponseParser.newBuilder() + .setDefaultInstance(SearchDocumentChunksResponse.getDefaultInstance()) + .setDefaultTypeRegistry(typeRegistry) + .build()) + .build(); + + private static final ApiMethodDescriptor + getDocumentMethodDescriptor = + ApiMethodDescriptor.newBuilder() + .setFullMethodName("google.developers.knowledge.v1.DeveloperKnowledge/GetDocument") + .setHttpMethod("GET") + .setType(ApiMethodDescriptor.MethodType.UNARY) + .setRequestFormatter( + ProtoMessageRequestFormatter.newBuilder() + .setPath( + "/v1/{name=documents/**}", + 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, "view", request.getViewValue()); + serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); + return fields; + }) + .setRequestBodyExtractor(request -> null) + .build()) + .setResponseParser( + ProtoMessageResponseParser.newBuilder() + .setDefaultInstance(Document.getDefaultInstance()) + .setDefaultTypeRegistry(typeRegistry) + .build()) + .build(); + + private static final ApiMethodDescriptor + batchGetDocumentsMethodDescriptor = + ApiMethodDescriptor.newBuilder() + .setFullMethodName( + "google.developers.knowledge.v1.DeveloperKnowledge/BatchGetDocuments") + .setHttpMethod("GET") + .setType(ApiMethodDescriptor.MethodType.UNARY) + .setRequestFormatter( + ProtoMessageRequestFormatter.newBuilder() + .setPath( + "/v1/documents:batchGet", + request -> { + Map fields = new HashMap<>(); + ProtoRestSerializer serializer = + ProtoRestSerializer.create(); + return fields; + }) + .setQueryParamsExtractor( + request -> { + Map> fields = new HashMap<>(); + ProtoRestSerializer serializer = + ProtoRestSerializer.create(); + serializer.putQueryParam(fields, "names", request.getNamesList()); + serializer.putQueryParam(fields, "view", request.getViewValue()); + serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); + return fields; + }) + .setRequestBodyExtractor(request -> null) + .build()) + .setResponseParser( + ProtoMessageResponseParser.newBuilder() + .setDefaultInstance(BatchGetDocumentsResponse.getDefaultInstance()) + .setDefaultTypeRegistry(typeRegistry) + .build()) + .build(); + + private final UnaryCallable + searchDocumentChunksCallable; + private final UnaryCallable + searchDocumentChunksPagedCallable; + private final UnaryCallable getDocumentCallable; + private final UnaryCallable + batchGetDocumentsCallable; + + private final BackgroundResource backgroundResources; + private final HttpJsonStubCallableFactory callableFactory; + + public static final HttpJsonDeveloperKnowledgeStub create(DeveloperKnowledgeStubSettings settings) + throws IOException { + return new HttpJsonDeveloperKnowledgeStub(settings, ClientContext.create(settings)); + } + + public static final HttpJsonDeveloperKnowledgeStub create(ClientContext clientContext) + throws IOException { + return new HttpJsonDeveloperKnowledgeStub( + DeveloperKnowledgeStubSettings.newHttpJsonBuilder().build(), clientContext); + } + + public static final HttpJsonDeveloperKnowledgeStub create( + ClientContext clientContext, HttpJsonStubCallableFactory callableFactory) throws IOException { + return new HttpJsonDeveloperKnowledgeStub( + DeveloperKnowledgeStubSettings.newHttpJsonBuilder().build(), + clientContext, + callableFactory); + } + + /** + * Constructs an instance of HttpJsonDeveloperKnowledgeStub, using the given settings. This is + * protected so that it is easy to make a subclass, but otherwise, the static factory methods + * should be preferred. + */ + protected HttpJsonDeveloperKnowledgeStub( + DeveloperKnowledgeStubSettings settings, ClientContext clientContext) throws IOException { + this(settings, clientContext, new HttpJsonDeveloperKnowledgeCallableFactory()); + } + + /** + * Constructs an instance of HttpJsonDeveloperKnowledgeStub, using the given settings. This is + * protected so that it is easy to make a subclass, but otherwise, the static factory methods + * should be preferred. + */ + protected HttpJsonDeveloperKnowledgeStub( + DeveloperKnowledgeStubSettings settings, + ClientContext clientContext, + HttpJsonStubCallableFactory callableFactory) + throws IOException { + this.callableFactory = callableFactory; + + HttpJsonCallSettings + searchDocumentChunksTransportSettings = + HttpJsonCallSettings + .newBuilder() + .setMethodDescriptor(searchDocumentChunksMethodDescriptor) + .setTypeRegistry(typeRegistry) + .build(); + HttpJsonCallSettings getDocumentTransportSettings = + HttpJsonCallSettings.newBuilder() + .setMethodDescriptor(getDocumentMethodDescriptor) + .setTypeRegistry(typeRegistry) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add("name", String.valueOf(request.getName())); + return builder.build(); + }) + .setResourceNameExtractor(request -> request.getName()) + .build(); + HttpJsonCallSettings + batchGetDocumentsTransportSettings = + HttpJsonCallSettings.newBuilder() + .setMethodDescriptor(batchGetDocumentsMethodDescriptor) + .setTypeRegistry(typeRegistry) + .build(); + + this.searchDocumentChunksCallable = + callableFactory.createUnaryCallable( + searchDocumentChunksTransportSettings, + settings.searchDocumentChunksSettings(), + clientContext); + this.searchDocumentChunksPagedCallable = + callableFactory.createPagedCallable( + searchDocumentChunksTransportSettings, + settings.searchDocumentChunksSettings(), + clientContext); + this.getDocumentCallable = + callableFactory.createUnaryCallable( + getDocumentTransportSettings, settings.getDocumentSettings(), clientContext); + this.batchGetDocumentsCallable = + callableFactory.createUnaryCallable( + batchGetDocumentsTransportSettings, + settings.batchGetDocumentsSettings(), + clientContext); + + this.backgroundResources = + new BackgroundResourceAggregation(clientContext.getBackgroundResources()); + } + + @InternalApi + public static List getMethodDescriptors() { + List methodDescriptors = new ArrayList<>(); + methodDescriptors.add(searchDocumentChunksMethodDescriptor); + methodDescriptors.add(getDocumentMethodDescriptor); + methodDescriptors.add(batchGetDocumentsMethodDescriptor); + return methodDescriptors; + } + + @Override + public UnaryCallable + searchDocumentChunksCallable() { + return searchDocumentChunksCallable; + } + + @Override + public UnaryCallable + searchDocumentChunksPagedCallable() { + return searchDocumentChunksPagedCallable; + } + + @Override + public UnaryCallable getDocumentCallable() { + return getDocumentCallable; + } + + @Override + public UnaryCallable + batchGetDocumentsCallable() { + return batchGetDocumentsCallable; + } + + @Override + public final void close() { + try { + backgroundResources.close(); + } catch (RuntimeException e) { + throw e; + } catch (Exception e) { + throw new IllegalStateException("Failed to close resource", e); + } + } + + @Override + public void shutdown() { + backgroundResources.shutdown(); + } + + @Override + public boolean isShutdown() { + return backgroundResources.isShutdown(); + } + + @Override + public boolean isTerminated() { + return backgroundResources.isTerminated(); + } + + @Override + public void shutdownNow() { + backgroundResources.shutdownNow(); + } + + @Override + public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException { + return backgroundResources.awaitTermination(duration, unit); + } +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/Version.java b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/Version.java new file mode 100644 index 000000000000..8932d03e3ad7 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/java/com/google/developers/knowledge/v1/stub/Version.java @@ -0,0 +1,27 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.stub; + +import com.google.api.core.InternalApi; + +@InternalApi("For internal use only") +final class Version { + // {x-version-update-start:google-cloud-developer-knowledge:current} + static final String VERSION = "0.0.0-SNAPSHOT"; + // {x-version-update-end} + +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/main/resources/META-INF/native-image/com.google.developers.knowledge.v1/reflect-config.json b/java-developerknowledge/google-cloud-developer-knowledge/src/main/resources/META-INF/native-image/com.google.developers.knowledge.v1/reflect-config.json new file mode 100644 index 000000000000..f7cc62dc48d9 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/main/resources/META-INF/native-image/com.google.developers.knowledge.v1/reflect-config.json @@ -0,0 +1,1442 @@ +[ + { + "name": "com.google.api.BatchingConfigProto", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.BatchingConfigProto$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.BatchingDescriptorProto", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.BatchingDescriptorProto$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.BatchingSettingsProto", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.BatchingSettingsProto$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "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.FlowControlLimitExceededBehaviorProto", + "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.PythonSettings$ExperimentalFeatures", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.PythonSettings$ExperimentalFeatures$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.api.SelectiveGapicGeneration", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.api.SelectiveGapicGeneration$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.BatchGetDocumentsRequest", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.BatchGetDocumentsRequest$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.BatchGetDocumentsResponse", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.BatchGetDocumentsResponse$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.Document", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.Document$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.DocumentChunk", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.DocumentChunk$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.DocumentView", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.GetDocumentRequest", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.GetDocumentRequest$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.SearchDocumentChunksRequest", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.SearchDocumentChunksRequest$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.SearchDocumentChunksResponse", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.developers.knowledge.v1.SearchDocumentChunksResponse$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$Edition", + "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$FeatureSet", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSet$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSet$EnforceNamingStyle", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSet$EnumType", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSet$FieldPresence", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSet$JsonFormat", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSet$MessageEncoding", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSet$RepeatedFieldEncoding", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSet$Utf8Validation", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSet$VisibilityFeature", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSet$VisibilityFeature$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSet$VisibilityFeature$DefaultSymbolVisibility", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSetDefaults", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSetDefaults$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSetDefaults$FeatureSetEditionDefault", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FeatureSetDefaults$FeatureSetEditionDefault$Builder", + "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$EditionDefault", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FieldOptions$EditionDefault$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FieldOptions$FeatureSupport", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.protobuf.DescriptorProtos$FieldOptions$FeatureSupport$Builder", + "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$SymbolVisibility", + "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 + } +] \ No newline at end of file diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/DeveloperKnowledgeClientHttpJsonTest.java b/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/DeveloperKnowledgeClientHttpJsonTest.java new file mode 100644 index 000000000000..6e79483efe7e --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/DeveloperKnowledgeClientHttpJsonTest.java @@ -0,0 +1,293 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1; + +import static com.google.developers.knowledge.v1.DeveloperKnowledgeClient.SearchDocumentChunksPagedResponse; + +import com.google.api.gax.core.NoCredentialsProvider; +import com.google.api.gax.httpjson.GaxHttpJsonProperties; +import com.google.api.gax.httpjson.testing.MockHttpService; +import com.google.api.gax.rpc.ApiClientHeaderProvider; +import com.google.api.gax.rpc.ApiException; +import com.google.api.gax.rpc.ApiExceptionFactory; +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.common.collect.Lists; +import com.google.developers.knowledge.v1.stub.HttpJsonDeveloperKnowledgeStub; +import com.google.protobuf.Timestamp; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import javax.annotation.Generated; +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Assert; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; + +@Generated("by gapic-generator-java") +public class DeveloperKnowledgeClientHttpJsonTest { + private static MockHttpService mockService; + private static DeveloperKnowledgeClient client; + + @BeforeClass + public static void startStaticServer() throws IOException { + mockService = + new MockHttpService( + HttpJsonDeveloperKnowledgeStub.getMethodDescriptors(), + DeveloperKnowledgeSettings.getDefaultEndpoint()); + DeveloperKnowledgeSettings settings = + DeveloperKnowledgeSettings.newHttpJsonBuilder() + .setTransportChannelProvider( + DeveloperKnowledgeSettings.defaultHttpJsonTransportProviderBuilder() + .setHttpTransport(mockService) + .build()) + .setCredentialsProvider(NoCredentialsProvider.create()) + .build(); + client = DeveloperKnowledgeClient.create(settings); + } + + @AfterClass + public static void stopServer() { + client.close(); + } + + @Before + public void setUp() {} + + @After + public void tearDown() throws Exception { + mockService.reset(); + } + + @Test + public void searchDocumentChunksTest() throws Exception { + DocumentChunk responsesElement = DocumentChunk.newBuilder().build(); + SearchDocumentChunksResponse expectedResponse = + SearchDocumentChunksResponse.newBuilder() + .setNextPageToken("") + .addAllResults(Arrays.asList(responsesElement)) + .build(); + mockService.addResponse(expectedResponse); + + SearchDocumentChunksRequest request = + SearchDocumentChunksRequest.newBuilder() + .setQuery("query107944136") + .setPageSize(883849137) + .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") + .build(); + + SearchDocumentChunksPagedResponse pagedListResponse = client.searchDocumentChunks(request); + + List resources = Lists.newArrayList(pagedListResponse.iterateAll()); + + Assert.assertEquals(1, resources.size()); + Assert.assertEquals(expectedResponse.getResultsList().get(0), resources.get(0)); + + 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 searchDocumentChunksExceptionTest() throws Exception { + ApiException exception = + ApiExceptionFactory.createException( + new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); + mockService.addException(exception); + + try { + SearchDocumentChunksRequest request = + SearchDocumentChunksRequest.newBuilder() + .setQuery("query107944136") + .setPageSize(883849137) + .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") + .build(); + client.searchDocumentChunks(request); + Assert.fail("No exception raised"); + } catch (InvalidArgumentException e) { + // Expected exception. + } + } + + @Test + public void getDocumentTest() throws Exception { + Document expectedResponse = + Document.newBuilder() + .setName(DocumentName.of("[DOCUMENT]").toString()) + .setUri("uri116076") + .setContent("content951530617") + .setDescription("description-1724546052") + .setDataSource("dataSource1272470629") + .setTitle("title110371416") + .setUpdateTime(Timestamp.newBuilder().build()) + .setView(DocumentView.forNumber(0)) + .build(); + mockService.addResponse(expectedResponse); + + DocumentName name = DocumentName.of("[DOCUMENT]"); + + Document actualResponse = client.getDocument(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 getDocumentExceptionTest() throws Exception { + ApiException exception = + ApiExceptionFactory.createException( + new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); + mockService.addException(exception); + + try { + DocumentName name = DocumentName.of("[DOCUMENT]"); + client.getDocument(name); + Assert.fail("No exception raised"); + } catch (InvalidArgumentException e) { + // Expected exception. + } + } + + @Test + public void getDocumentTest2() throws Exception { + Document expectedResponse = + Document.newBuilder() + .setName(DocumentName.of("[DOCUMENT]").toString()) + .setUri("uri116076") + .setContent("content951530617") + .setDescription("description-1724546052") + .setDataSource("dataSource1272470629") + .setTitle("title110371416") + .setUpdateTime(Timestamp.newBuilder().build()) + .setView(DocumentView.forNumber(0)) + .build(); + mockService.addResponse(expectedResponse); + + String name = "documents/document-1246"; + + Document actualResponse = client.getDocument(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 getDocumentExceptionTest2() throws Exception { + ApiException exception = + ApiExceptionFactory.createException( + new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); + mockService.addException(exception); + + try { + String name = "documents/document-1246"; + client.getDocument(name); + Assert.fail("No exception raised"); + } catch (InvalidArgumentException e) { + // Expected exception. + } + } + + @Test + public void batchGetDocumentsTest() throws Exception { + BatchGetDocumentsResponse expectedResponse = + BatchGetDocumentsResponse.newBuilder().addAllDocuments(new ArrayList()).build(); + mockService.addResponse(expectedResponse); + + BatchGetDocumentsRequest request = + BatchGetDocumentsRequest.newBuilder() + .addAllNames(new ArrayList()) + .setView(DocumentView.forNumber(0)) + .build(); + + BatchGetDocumentsResponse actualResponse = client.batchGetDocuments(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 batchGetDocumentsExceptionTest() throws Exception { + ApiException exception = + ApiExceptionFactory.createException( + new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); + mockService.addException(exception); + + try { + BatchGetDocumentsRequest request = + BatchGetDocumentsRequest.newBuilder() + .addAllNames(new ArrayList()) + .setView(DocumentView.forNumber(0)) + .build(); + client.batchGetDocuments(request); + Assert.fail("No exception raised"); + } catch (InvalidArgumentException e) { + // Expected exception. + } + } +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/DeveloperKnowledgeClientTest.java b/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/DeveloperKnowledgeClientTest.java new file mode 100644 index 000000000000..0ba54e5a2a18 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/DeveloperKnowledgeClientTest.java @@ -0,0 +1,277 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1; + +import static com.google.developers.knowledge.v1.DeveloperKnowledgeClient.SearchDocumentChunksPagedResponse; + +import com.google.api.gax.core.NoCredentialsProvider; +import com.google.api.gax.grpc.GaxGrpcProperties; +import com.google.api.gax.grpc.testing.LocalChannelProvider; +import com.google.api.gax.grpc.testing.MockGrpcService; +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.common.collect.Lists; +import com.google.protobuf.AbstractMessage; +import com.google.protobuf.Timestamp; +import io.grpc.StatusRuntimeException; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.UUID; +import javax.annotation.Generated; +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Assert; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; + +@Generated("by gapic-generator-java") +public class DeveloperKnowledgeClientTest { + private static MockDeveloperKnowledge mockDeveloperKnowledge; + private static MockServiceHelper mockServiceHelper; + private LocalChannelProvider channelProvider; + private DeveloperKnowledgeClient client; + + @BeforeClass + public static void startStaticServer() { + mockDeveloperKnowledge = new MockDeveloperKnowledge(); + mockServiceHelper = + new MockServiceHelper( + UUID.randomUUID().toString(), Arrays.asList(mockDeveloperKnowledge)); + mockServiceHelper.start(); + } + + @AfterClass + public static void stopServer() { + mockServiceHelper.stop(); + } + + @Before + public void setUp() throws IOException { + mockServiceHelper.reset(); + channelProvider = mockServiceHelper.createChannelProvider(); + DeveloperKnowledgeSettings settings = + DeveloperKnowledgeSettings.newBuilder() + .setTransportChannelProvider(channelProvider) + .setCredentialsProvider(NoCredentialsProvider.create()) + .build(); + client = DeveloperKnowledgeClient.create(settings); + } + + @After + public void tearDown() throws Exception { + client.close(); + } + + @Test + public void searchDocumentChunksTest() throws Exception { + DocumentChunk responsesElement = DocumentChunk.newBuilder().build(); + SearchDocumentChunksResponse expectedResponse = + SearchDocumentChunksResponse.newBuilder() + .setNextPageToken("") + .addAllResults(Arrays.asList(responsesElement)) + .build(); + mockDeveloperKnowledge.addResponse(expectedResponse); + + SearchDocumentChunksRequest request = + SearchDocumentChunksRequest.newBuilder() + .setQuery("query107944136") + .setPageSize(883849137) + .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") + .build(); + + SearchDocumentChunksPagedResponse pagedListResponse = client.searchDocumentChunks(request); + + List resources = Lists.newArrayList(pagedListResponse.iterateAll()); + + Assert.assertEquals(1, resources.size()); + Assert.assertEquals(expectedResponse.getResultsList().get(0), resources.get(0)); + + List actualRequests = mockDeveloperKnowledge.getRequests(); + Assert.assertEquals(1, actualRequests.size()); + SearchDocumentChunksRequest actualRequest = + ((SearchDocumentChunksRequest) actualRequests.get(0)); + + Assert.assertEquals(request.getQuery(), actualRequest.getQuery()); + Assert.assertEquals(request.getPageSize(), actualRequest.getPageSize()); + Assert.assertEquals(request.getPageToken(), actualRequest.getPageToken()); + Assert.assertEquals(request.getFilter(), actualRequest.getFilter()); + Assert.assertTrue( + channelProvider.isHeaderSent( + ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), + GaxGrpcProperties.getDefaultApiClientHeaderPattern())); + } + + @Test + public void searchDocumentChunksExceptionTest() throws Exception { + StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); + mockDeveloperKnowledge.addException(exception); + + try { + SearchDocumentChunksRequest request = + SearchDocumentChunksRequest.newBuilder() + .setQuery("query107944136") + .setPageSize(883849137) + .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") + .build(); + client.searchDocumentChunks(request); + Assert.fail("No exception raised"); + } catch (InvalidArgumentException e) { + // Expected exception. + } + } + + @Test + public void getDocumentTest() throws Exception { + Document expectedResponse = + Document.newBuilder() + .setName(DocumentName.of("[DOCUMENT]").toString()) + .setUri("uri116076") + .setContent("content951530617") + .setDescription("description-1724546052") + .setDataSource("dataSource1272470629") + .setTitle("title110371416") + .setUpdateTime(Timestamp.newBuilder().build()) + .setView(DocumentView.forNumber(0)) + .build(); + mockDeveloperKnowledge.addResponse(expectedResponse); + + DocumentName name = DocumentName.of("[DOCUMENT]"); + + Document actualResponse = client.getDocument(name); + Assert.assertEquals(expectedResponse, actualResponse); + + List actualRequests = mockDeveloperKnowledge.getRequests(); + Assert.assertEquals(1, actualRequests.size()); + GetDocumentRequest actualRequest = ((GetDocumentRequest) actualRequests.get(0)); + + Assert.assertEquals(name.toString(), actualRequest.getName()); + Assert.assertTrue( + channelProvider.isHeaderSent( + ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), + GaxGrpcProperties.getDefaultApiClientHeaderPattern())); + } + + @Test + public void getDocumentExceptionTest() throws Exception { + StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); + mockDeveloperKnowledge.addException(exception); + + try { + DocumentName name = DocumentName.of("[DOCUMENT]"); + client.getDocument(name); + Assert.fail("No exception raised"); + } catch (InvalidArgumentException e) { + // Expected exception. + } + } + + @Test + public void getDocumentTest2() throws Exception { + Document expectedResponse = + Document.newBuilder() + .setName(DocumentName.of("[DOCUMENT]").toString()) + .setUri("uri116076") + .setContent("content951530617") + .setDescription("description-1724546052") + .setDataSource("dataSource1272470629") + .setTitle("title110371416") + .setUpdateTime(Timestamp.newBuilder().build()) + .setView(DocumentView.forNumber(0)) + .build(); + mockDeveloperKnowledge.addResponse(expectedResponse); + + String name = "name3373707"; + + Document actualResponse = client.getDocument(name); + Assert.assertEquals(expectedResponse, actualResponse); + + List actualRequests = mockDeveloperKnowledge.getRequests(); + Assert.assertEquals(1, actualRequests.size()); + GetDocumentRequest actualRequest = ((GetDocumentRequest) actualRequests.get(0)); + + Assert.assertEquals(name, actualRequest.getName()); + Assert.assertTrue( + channelProvider.isHeaderSent( + ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), + GaxGrpcProperties.getDefaultApiClientHeaderPattern())); + } + + @Test + public void getDocumentExceptionTest2() throws Exception { + StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); + mockDeveloperKnowledge.addException(exception); + + try { + String name = "name3373707"; + client.getDocument(name); + Assert.fail("No exception raised"); + } catch (InvalidArgumentException e) { + // Expected exception. + } + } + + @Test + public void batchGetDocumentsTest() throws Exception { + BatchGetDocumentsResponse expectedResponse = + BatchGetDocumentsResponse.newBuilder().addAllDocuments(new ArrayList()).build(); + mockDeveloperKnowledge.addResponse(expectedResponse); + + BatchGetDocumentsRequest request = + BatchGetDocumentsRequest.newBuilder() + .addAllNames(new ArrayList()) + .setView(DocumentView.forNumber(0)) + .build(); + + BatchGetDocumentsResponse actualResponse = client.batchGetDocuments(request); + Assert.assertEquals(expectedResponse, actualResponse); + + List actualRequests = mockDeveloperKnowledge.getRequests(); + Assert.assertEquals(1, actualRequests.size()); + BatchGetDocumentsRequest actualRequest = ((BatchGetDocumentsRequest) actualRequests.get(0)); + + Assert.assertEquals(request.getNamesList(), actualRequest.getNamesList()); + Assert.assertEquals(request.getView(), actualRequest.getView()); + Assert.assertTrue( + channelProvider.isHeaderSent( + ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), + GaxGrpcProperties.getDefaultApiClientHeaderPattern())); + } + + @Test + public void batchGetDocumentsExceptionTest() throws Exception { + StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); + mockDeveloperKnowledge.addException(exception); + + try { + BatchGetDocumentsRequest request = + BatchGetDocumentsRequest.newBuilder() + .addAllNames(new ArrayList()) + .setView(DocumentView.forNumber(0)) + .build(); + client.batchGetDocuments(request); + Assert.fail("No exception raised"); + } catch (InvalidArgumentException e) { + // Expected exception. + } + } +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/MockDeveloperKnowledge.java b/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/MockDeveloperKnowledge.java new file mode 100644 index 000000000000..c28732192c49 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/MockDeveloperKnowledge.java @@ -0,0 +1,59 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1; + +import com.google.api.core.BetaApi; +import com.google.api.gax.grpc.testing.MockGrpcService; +import com.google.protobuf.AbstractMessage; +import io.grpc.ServerServiceDefinition; +import java.util.List; +import javax.annotation.Generated; + +@BetaApi +@Generated("by gapic-generator-java") +public class MockDeveloperKnowledge implements MockGrpcService { + private final MockDeveloperKnowledgeImpl serviceImpl; + + public MockDeveloperKnowledge() { + serviceImpl = new MockDeveloperKnowledgeImpl(); + } + + @Override + public List getRequests() { + return serviceImpl.getRequests(); + } + + @Override + public void addResponse(AbstractMessage response) { + serviceImpl.addResponse(response); + } + + @Override + public void addException(Exception exception) { + serviceImpl.addException(exception); + } + + @Override + public ServerServiceDefinition getServiceDefinition() { + return serviceImpl.bindService(); + } + + @Override + public void reset() { + serviceImpl.reset(); + } +} diff --git a/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/MockDeveloperKnowledgeImpl.java b/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/MockDeveloperKnowledgeImpl.java new file mode 100644 index 000000000000..bcddcb4e5717 --- /dev/null +++ b/java-developerknowledge/google-cloud-developer-knowledge/src/test/java/com/google/developers/knowledge/v1/MockDeveloperKnowledgeImpl.java @@ -0,0 +1,125 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1; + +import com.google.api.core.BetaApi; +import com.google.developers.knowledge.v1.DeveloperKnowledgeGrpc.DeveloperKnowledgeImplBase; +import com.google.protobuf.AbstractMessage; +import io.grpc.stub.StreamObserver; +import java.util.ArrayList; +import java.util.LinkedList; +import java.util.List; +import java.util.Queue; +import javax.annotation.Generated; + +@BetaApi +@Generated("by gapic-generator-java") +public class MockDeveloperKnowledgeImpl extends DeveloperKnowledgeImplBase { + private List requests; + private Queue responses; + + public MockDeveloperKnowledgeImpl() { + requests = new ArrayList<>(); + responses = new LinkedList<>(); + } + + public List getRequests() { + return requests; + } + + public void addResponse(AbstractMessage response) { + responses.add(response); + } + + public void setResponses(List responses) { + this.responses = new LinkedList(responses); + } + + public void addException(Exception exception) { + responses.add(exception); + } + + public void reset() { + requests = new ArrayList<>(); + responses = new LinkedList<>(); + } + + @Override + public void searchDocumentChunks( + SearchDocumentChunksRequest request, + StreamObserver responseObserver) { + Object response = responses.poll(); + if (response instanceof SearchDocumentChunksResponse) { + requests.add(request); + responseObserver.onNext(((SearchDocumentChunksResponse) 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 SearchDocumentChunks, expected %s or" + + " %s", + response == null ? "null" : response.getClass().getName(), + SearchDocumentChunksResponse.class.getName(), + Exception.class.getName()))); + } + } + + @Override + public void getDocument(GetDocumentRequest request, StreamObserver responseObserver) { + Object response = responses.poll(); + if (response instanceof Document) { + requests.add(request); + responseObserver.onNext(((Document) 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 GetDocument, expected %s or %s", + response == null ? "null" : response.getClass().getName(), + Document.class.getName(), + Exception.class.getName()))); + } + } + + @Override + public void batchGetDocuments( + BatchGetDocumentsRequest request, + StreamObserver responseObserver) { + Object response = responses.poll(); + if (response instanceof BatchGetDocumentsResponse) { + requests.add(request); + responseObserver.onNext(((BatchGetDocumentsResponse) 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 BatchGetDocuments, expected %s or %s", + response == null ? "null" : response.getClass().getName(), + BatchGetDocumentsResponse.class.getName(), + Exception.class.getName()))); + } + } +} diff --git a/java-developerknowledge/grpc-google-cloud-developer-knowledge-v1/pom.xml b/java-developerknowledge/grpc-google-cloud-developer-knowledge-v1/pom.xml new file mode 100644 index 000000000000..1bbbc568e404 --- /dev/null +++ b/java-developerknowledge/grpc-google-cloud-developer-knowledge-v1/pom.xml @@ -0,0 +1,45 @@ + + 4.0.0 + com.google.api.grpc + grpc-google-cloud-developer-knowledge-v1 + 0.0.1-SNAPSHOT + grpc-google-cloud-developer-knowledge-v1 + GRPC library for google-cloud-developer-knowledge + + com.google.cloud + google-cloud-developer-knowledge-parent + 0.0.1-SNAPSHOT + + + + io.grpc + grpc-api + + + io.grpc + grpc-stub + + + io.grpc + grpc-protobuf + + + com.google.protobuf + protobuf-java + + + com.google.api.grpc + proto-google-common-protos + + + com.google.api.grpc + proto-google-cloud-developer-knowledge-v1 + + + com.google.guava + guava + + + diff --git a/java-developerknowledge/grpc-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeGrpc.java b/java-developerknowledge/grpc-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeGrpc.java new file mode 100644 index 000000000000..fcdad526d352 --- /dev/null +++ b/java-developerknowledge/grpc-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeGrpc.java @@ -0,0 +1,838 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.google.developers.knowledge.v1; + +import static io.grpc.MethodDescriptor.generateFullMethodName; + +/** + * + * + *
+ * The Developer Knowledge API provides programmatic access to Google's public
+ * developer documentation, enabling you to integrate this knowledge base into
+ * your own applications and workflows.
+ * The API is designed to be the canonical source for machine-readable access to
+ * Google's developer documentation.
+ * A typical use case is to first use
+ * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks]
+ * to find relevant page URIs based on a query, and then use
+ * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+ * or
+ * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+ * to fetch the full content of the top results.
+ * All document content is provided in Markdown format.
+ * 
+ */ +@io.grpc.stub.annotations.GrpcGenerated +public final class DeveloperKnowledgeGrpc { + + private DeveloperKnowledgeGrpc() {} + + public static final java.lang.String SERVICE_NAME = + "google.developers.knowledge.v1.DeveloperKnowledge"; + + // Static method descriptors that strictly reflect the proto. + private static volatile io.grpc.MethodDescriptor< + com.google.developers.knowledge.v1.SearchDocumentChunksRequest, + com.google.developers.knowledge.v1.SearchDocumentChunksResponse> + getSearchDocumentChunksMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "SearchDocumentChunks", + requestType = com.google.developers.knowledge.v1.SearchDocumentChunksRequest.class, + responseType = com.google.developers.knowledge.v1.SearchDocumentChunksResponse.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor< + com.google.developers.knowledge.v1.SearchDocumentChunksRequest, + com.google.developers.knowledge.v1.SearchDocumentChunksResponse> + getSearchDocumentChunksMethod() { + io.grpc.MethodDescriptor< + com.google.developers.knowledge.v1.SearchDocumentChunksRequest, + com.google.developers.knowledge.v1.SearchDocumentChunksResponse> + getSearchDocumentChunksMethod; + if ((getSearchDocumentChunksMethod = DeveloperKnowledgeGrpc.getSearchDocumentChunksMethod) + == null) { + synchronized (DeveloperKnowledgeGrpc.class) { + if ((getSearchDocumentChunksMethod = DeveloperKnowledgeGrpc.getSearchDocumentChunksMethod) + == null) { + DeveloperKnowledgeGrpc.getSearchDocumentChunksMethod = + getSearchDocumentChunksMethod = + io.grpc.MethodDescriptor + . + newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName( + generateFullMethodName(SERVICE_NAME, "SearchDocumentChunks")) + .setSampledToLocalTracing(true) + .setRequestMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.developers.knowledge.v1.SearchDocumentChunksRequest + .getDefaultInstance())) + .setResponseMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.developers.knowledge.v1.SearchDocumentChunksResponse + .getDefaultInstance())) + .setSchemaDescriptor( + new DeveloperKnowledgeMethodDescriptorSupplier("SearchDocumentChunks")) + .build(); + } + } + } + return getSearchDocumentChunksMethod; + } + + private static volatile io.grpc.MethodDescriptor< + com.google.developers.knowledge.v1.GetDocumentRequest, + com.google.developers.knowledge.v1.Document> + getGetDocumentMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "GetDocument", + requestType = com.google.developers.knowledge.v1.GetDocumentRequest.class, + responseType = com.google.developers.knowledge.v1.Document.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor< + com.google.developers.knowledge.v1.GetDocumentRequest, + com.google.developers.knowledge.v1.Document> + getGetDocumentMethod() { + io.grpc.MethodDescriptor< + com.google.developers.knowledge.v1.GetDocumentRequest, + com.google.developers.knowledge.v1.Document> + getGetDocumentMethod; + if ((getGetDocumentMethod = DeveloperKnowledgeGrpc.getGetDocumentMethod) == null) { + synchronized (DeveloperKnowledgeGrpc.class) { + if ((getGetDocumentMethod = DeveloperKnowledgeGrpc.getGetDocumentMethod) == null) { + DeveloperKnowledgeGrpc.getGetDocumentMethod = + getGetDocumentMethod = + io.grpc.MethodDescriptor + . + newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "GetDocument")) + .setSampledToLocalTracing(true) + .setRequestMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.developers.knowledge.v1.GetDocumentRequest + .getDefaultInstance())) + .setResponseMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.developers.knowledge.v1.Document.getDefaultInstance())) + .setSchemaDescriptor( + new DeveloperKnowledgeMethodDescriptorSupplier("GetDocument")) + .build(); + } + } + } + return getGetDocumentMethod; + } + + private static volatile io.grpc.MethodDescriptor< + com.google.developers.knowledge.v1.BatchGetDocumentsRequest, + com.google.developers.knowledge.v1.BatchGetDocumentsResponse> + getBatchGetDocumentsMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "BatchGetDocuments", + requestType = com.google.developers.knowledge.v1.BatchGetDocumentsRequest.class, + responseType = com.google.developers.knowledge.v1.BatchGetDocumentsResponse.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor< + com.google.developers.knowledge.v1.BatchGetDocumentsRequest, + com.google.developers.knowledge.v1.BatchGetDocumentsResponse> + getBatchGetDocumentsMethod() { + io.grpc.MethodDescriptor< + com.google.developers.knowledge.v1.BatchGetDocumentsRequest, + com.google.developers.knowledge.v1.BatchGetDocumentsResponse> + getBatchGetDocumentsMethod; + if ((getBatchGetDocumentsMethod = DeveloperKnowledgeGrpc.getBatchGetDocumentsMethod) == null) { + synchronized (DeveloperKnowledgeGrpc.class) { + if ((getBatchGetDocumentsMethod = DeveloperKnowledgeGrpc.getBatchGetDocumentsMethod) + == null) { + DeveloperKnowledgeGrpc.getBatchGetDocumentsMethod = + getBatchGetDocumentsMethod = + io.grpc.MethodDescriptor + . + newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "BatchGetDocuments")) + .setSampledToLocalTracing(true) + .setRequestMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.developers.knowledge.v1.BatchGetDocumentsRequest + .getDefaultInstance())) + .setResponseMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.developers.knowledge.v1.BatchGetDocumentsResponse + .getDefaultInstance())) + .setSchemaDescriptor( + new DeveloperKnowledgeMethodDescriptorSupplier("BatchGetDocuments")) + .build(); + } + } + } + return getBatchGetDocumentsMethod; + } + + /** Creates a new async stub that supports all call types for the service */ + public static DeveloperKnowledgeStub newStub(io.grpc.Channel channel) { + io.grpc.stub.AbstractStub.StubFactory factory = + new io.grpc.stub.AbstractStub.StubFactory() { + @java.lang.Override + public DeveloperKnowledgeStub newStub( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new DeveloperKnowledgeStub(channel, callOptions); + } + }; + return DeveloperKnowledgeStub.newStub(factory, channel); + } + + /** Creates a new blocking-style stub that supports all types of calls on the service */ + public static DeveloperKnowledgeBlockingV2Stub newBlockingV2Stub(io.grpc.Channel channel) { + io.grpc.stub.AbstractStub.StubFactory factory = + new io.grpc.stub.AbstractStub.StubFactory() { + @java.lang.Override + public DeveloperKnowledgeBlockingV2Stub newStub( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new DeveloperKnowledgeBlockingV2Stub(channel, callOptions); + } + }; + return DeveloperKnowledgeBlockingV2Stub.newStub(factory, channel); + } + + /** + * Creates a new blocking-style stub that supports unary and streaming output calls on the service + */ + public static DeveloperKnowledgeBlockingStub newBlockingStub(io.grpc.Channel channel) { + io.grpc.stub.AbstractStub.StubFactory factory = + new io.grpc.stub.AbstractStub.StubFactory() { + @java.lang.Override + public DeveloperKnowledgeBlockingStub newStub( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new DeveloperKnowledgeBlockingStub(channel, callOptions); + } + }; + return DeveloperKnowledgeBlockingStub.newStub(factory, channel); + } + + /** Creates a new ListenableFuture-style stub that supports unary calls on the service */ + public static DeveloperKnowledgeFutureStub newFutureStub(io.grpc.Channel channel) { + io.grpc.stub.AbstractStub.StubFactory factory = + new io.grpc.stub.AbstractStub.StubFactory() { + @java.lang.Override + public DeveloperKnowledgeFutureStub newStub( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new DeveloperKnowledgeFutureStub(channel, callOptions); + } + }; + return DeveloperKnowledgeFutureStub.newStub(factory, channel); + } + + /** + * + * + *
+   * The Developer Knowledge API provides programmatic access to Google's public
+   * developer documentation, enabling you to integrate this knowledge base into
+   * your own applications and workflows.
+   * The API is designed to be the canonical source for machine-readable access to
+   * Google's developer documentation.
+   * A typical use case is to first use
+   * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks]
+   * to find relevant page URIs based on a query, and then use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full content of the top results.
+   * All document content is provided in Markdown format.
+   * 
+ */ + public interface AsyncService { + + /** + * + * + *
+     * Searches for developer knowledge across Google's developer documentation.
+     * Returns [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s
+     * based on the user's query. There may be many chunks from the same
+     * [Document][google.developers.knowledge.v1.Document].  To retrieve full
+     * documents, use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * with the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * returned in the
+     * [SearchDocumentChunksResponse.results][google.developers.knowledge.v1.SearchDocumentChunksResponse.results].
+     * 
+ */ + default void searchDocumentChunks( + com.google.developers.knowledge.v1.SearchDocumentChunksRequest request, + io.grpc.stub.StreamObserver + responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( + getSearchDocumentChunksMethod(), responseObserver); + } + + /** + * + * + *
+     * Retrieves a single document with its full Markdown content.
+     * 
+ */ + default void getDocument( + com.google.developers.knowledge.v1.GetDocumentRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( + getGetDocumentMethod(), responseObserver); + } + + /** + * + * + *
+     * Retrieves multiple documents, each with its full Markdown content.
+     * 
+ */ + default void batchGetDocuments( + com.google.developers.knowledge.v1.BatchGetDocumentsRequest request, + io.grpc.stub.StreamObserver + responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( + getBatchGetDocumentsMethod(), responseObserver); + } + } + + /** + * Base class for the server implementation of the service DeveloperKnowledge. + * + *
+   * The Developer Knowledge API provides programmatic access to Google's public
+   * developer documentation, enabling you to integrate this knowledge base into
+   * your own applications and workflows.
+   * The API is designed to be the canonical source for machine-readable access to
+   * Google's developer documentation.
+   * A typical use case is to first use
+   * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks]
+   * to find relevant page URIs based on a query, and then use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full content of the top results.
+   * All document content is provided in Markdown format.
+   * 
+ */ + public abstract static class DeveloperKnowledgeImplBase + implements io.grpc.BindableService, AsyncService { + + @java.lang.Override + public final io.grpc.ServerServiceDefinition bindService() { + return DeveloperKnowledgeGrpc.bindService(this); + } + } + + /** + * A stub to allow clients to do asynchronous rpc calls to service DeveloperKnowledge. + * + *
+   * The Developer Knowledge API provides programmatic access to Google's public
+   * developer documentation, enabling you to integrate this knowledge base into
+   * your own applications and workflows.
+   * The API is designed to be the canonical source for machine-readable access to
+   * Google's developer documentation.
+   * A typical use case is to first use
+   * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks]
+   * to find relevant page URIs based on a query, and then use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full content of the top results.
+   * All document content is provided in Markdown format.
+   * 
+ */ + public static final class DeveloperKnowledgeStub + extends io.grpc.stub.AbstractAsyncStub { + private DeveloperKnowledgeStub(io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + super(channel, callOptions); + } + + @java.lang.Override + protected DeveloperKnowledgeStub build( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new DeveloperKnowledgeStub(channel, callOptions); + } + + /** + * + * + *
+     * Searches for developer knowledge across Google's developer documentation.
+     * Returns [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s
+     * based on the user's query. There may be many chunks from the same
+     * [Document][google.developers.knowledge.v1.Document].  To retrieve full
+     * documents, use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * with the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * returned in the
+     * [SearchDocumentChunksResponse.results][google.developers.knowledge.v1.SearchDocumentChunksResponse.results].
+     * 
+ */ + public void searchDocumentChunks( + com.google.developers.knowledge.v1.SearchDocumentChunksRequest request, + io.grpc.stub.StreamObserver + responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getSearchDocumentChunksMethod(), getCallOptions()), + request, + responseObserver); + } + + /** + * + * + *
+     * Retrieves a single document with its full Markdown content.
+     * 
+ */ + public void getDocument( + com.google.developers.knowledge.v1.GetDocumentRequest request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getGetDocumentMethod(), getCallOptions()), + request, + responseObserver); + } + + /** + * + * + *
+     * Retrieves multiple documents, each with its full Markdown content.
+     * 
+ */ + public void batchGetDocuments( + com.google.developers.knowledge.v1.BatchGetDocumentsRequest request, + io.grpc.stub.StreamObserver + responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getBatchGetDocumentsMethod(), getCallOptions()), + request, + responseObserver); + } + } + + /** + * A stub to allow clients to do synchronous rpc calls to service DeveloperKnowledge. + * + *
+   * The Developer Knowledge API provides programmatic access to Google's public
+   * developer documentation, enabling you to integrate this knowledge base into
+   * your own applications and workflows.
+   * The API is designed to be the canonical source for machine-readable access to
+   * Google's developer documentation.
+   * A typical use case is to first use
+   * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks]
+   * to find relevant page URIs based on a query, and then use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full content of the top results.
+   * All document content is provided in Markdown format.
+   * 
+ */ + public static final class DeveloperKnowledgeBlockingV2Stub + extends io.grpc.stub.AbstractBlockingStub { + private DeveloperKnowledgeBlockingV2Stub( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + super(channel, callOptions); + } + + @java.lang.Override + protected DeveloperKnowledgeBlockingV2Stub build( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new DeveloperKnowledgeBlockingV2Stub(channel, callOptions); + } + + /** + * + * + *
+     * Searches for developer knowledge across Google's developer documentation.
+     * Returns [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s
+     * based on the user's query. There may be many chunks from the same
+     * [Document][google.developers.knowledge.v1.Document].  To retrieve full
+     * documents, use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * with the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * returned in the
+     * [SearchDocumentChunksResponse.results][google.developers.knowledge.v1.SearchDocumentChunksResponse.results].
+     * 
+ */ + public com.google.developers.knowledge.v1.SearchDocumentChunksResponse searchDocumentChunks( + com.google.developers.knowledge.v1.SearchDocumentChunksRequest request) + throws io.grpc.StatusException { + return io.grpc.stub.ClientCalls.blockingV2UnaryCall( + getChannel(), getSearchDocumentChunksMethod(), getCallOptions(), request); + } + + /** + * + * + *
+     * Retrieves a single document with its full Markdown content.
+     * 
+ */ + public com.google.developers.knowledge.v1.Document getDocument( + com.google.developers.knowledge.v1.GetDocumentRequest request) + throws io.grpc.StatusException { + return io.grpc.stub.ClientCalls.blockingV2UnaryCall( + getChannel(), getGetDocumentMethod(), getCallOptions(), request); + } + + /** + * + * + *
+     * Retrieves multiple documents, each with its full Markdown content.
+     * 
+ */ + public com.google.developers.knowledge.v1.BatchGetDocumentsResponse batchGetDocuments( + com.google.developers.knowledge.v1.BatchGetDocumentsRequest request) + throws io.grpc.StatusException { + return io.grpc.stub.ClientCalls.blockingV2UnaryCall( + getChannel(), getBatchGetDocumentsMethod(), getCallOptions(), request); + } + } + + /** + * A stub to allow clients to do limited synchronous rpc calls to service DeveloperKnowledge. + * + *
+   * The Developer Knowledge API provides programmatic access to Google's public
+   * developer documentation, enabling you to integrate this knowledge base into
+   * your own applications and workflows.
+   * The API is designed to be the canonical source for machine-readable access to
+   * Google's developer documentation.
+   * A typical use case is to first use
+   * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks]
+   * to find relevant page URIs based on a query, and then use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full content of the top results.
+   * All document content is provided in Markdown format.
+   * 
+ */ + public static final class DeveloperKnowledgeBlockingStub + extends io.grpc.stub.AbstractBlockingStub { + private DeveloperKnowledgeBlockingStub( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + super(channel, callOptions); + } + + @java.lang.Override + protected DeveloperKnowledgeBlockingStub build( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new DeveloperKnowledgeBlockingStub(channel, callOptions); + } + + /** + * + * + *
+     * Searches for developer knowledge across Google's developer documentation.
+     * Returns [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s
+     * based on the user's query. There may be many chunks from the same
+     * [Document][google.developers.knowledge.v1.Document].  To retrieve full
+     * documents, use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * with the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * returned in the
+     * [SearchDocumentChunksResponse.results][google.developers.knowledge.v1.SearchDocumentChunksResponse.results].
+     * 
+ */ + public com.google.developers.knowledge.v1.SearchDocumentChunksResponse searchDocumentChunks( + com.google.developers.knowledge.v1.SearchDocumentChunksRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getSearchDocumentChunksMethod(), getCallOptions(), request); + } + + /** + * + * + *
+     * Retrieves a single document with its full Markdown content.
+     * 
+ */ + public com.google.developers.knowledge.v1.Document getDocument( + com.google.developers.knowledge.v1.GetDocumentRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getGetDocumentMethod(), getCallOptions(), request); + } + + /** + * + * + *
+     * Retrieves multiple documents, each with its full Markdown content.
+     * 
+ */ + public com.google.developers.knowledge.v1.BatchGetDocumentsResponse batchGetDocuments( + com.google.developers.knowledge.v1.BatchGetDocumentsRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getBatchGetDocumentsMethod(), getCallOptions(), request); + } + } + + /** + * A stub to allow clients to do ListenableFuture-style rpc calls to service DeveloperKnowledge. + * + *
+   * The Developer Knowledge API provides programmatic access to Google's public
+   * developer documentation, enabling you to integrate this knowledge base into
+   * your own applications and workflows.
+   * The API is designed to be the canonical source for machine-readable access to
+   * Google's developer documentation.
+   * A typical use case is to first use
+   * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks]
+   * to find relevant page URIs based on a query, and then use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full content of the top results.
+   * All document content is provided in Markdown format.
+   * 
+ */ + public static final class DeveloperKnowledgeFutureStub + extends io.grpc.stub.AbstractFutureStub { + private DeveloperKnowledgeFutureStub(io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + super(channel, callOptions); + } + + @java.lang.Override + protected DeveloperKnowledgeFutureStub build( + io.grpc.Channel channel, io.grpc.CallOptions callOptions) { + return new DeveloperKnowledgeFutureStub(channel, callOptions); + } + + /** + * + * + *
+     * Searches for developer knowledge across Google's developer documentation.
+     * Returns [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s
+     * based on the user's query. There may be many chunks from the same
+     * [Document][google.developers.knowledge.v1.Document].  To retrieve full
+     * documents, use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * with the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * returned in the
+     * [SearchDocumentChunksResponse.results][google.developers.knowledge.v1.SearchDocumentChunksResponse.results].
+     * 
+ */ + public com.google.common.util.concurrent.ListenableFuture< + com.google.developers.knowledge.v1.SearchDocumentChunksResponse> + searchDocumentChunks( + com.google.developers.knowledge.v1.SearchDocumentChunksRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getSearchDocumentChunksMethod(), getCallOptions()), request); + } + + /** + * + * + *
+     * Retrieves a single document with its full Markdown content.
+     * 
+ */ + public com.google.common.util.concurrent.ListenableFuture< + com.google.developers.knowledge.v1.Document> + getDocument(com.google.developers.knowledge.v1.GetDocumentRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getGetDocumentMethod(), getCallOptions()), request); + } + + /** + * + * + *
+     * Retrieves multiple documents, each with its full Markdown content.
+     * 
+ */ + public com.google.common.util.concurrent.ListenableFuture< + com.google.developers.knowledge.v1.BatchGetDocumentsResponse> + batchGetDocuments(com.google.developers.knowledge.v1.BatchGetDocumentsRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getBatchGetDocumentsMethod(), getCallOptions()), request); + } + } + + private static final int METHODID_SEARCH_DOCUMENT_CHUNKS = 0; + private static final int METHODID_GET_DOCUMENT = 1; + private static final int METHODID_BATCH_GET_DOCUMENTS = 2; + + private static final class MethodHandlers + implements io.grpc.stub.ServerCalls.UnaryMethod, + io.grpc.stub.ServerCalls.ServerStreamingMethod, + io.grpc.stub.ServerCalls.ClientStreamingMethod, + io.grpc.stub.ServerCalls.BidiStreamingMethod { + private final AsyncService serviceImpl; + private final int methodId; + + MethodHandlers(AsyncService serviceImpl, int methodId) { + this.serviceImpl = serviceImpl; + this.methodId = methodId; + } + + @java.lang.Override + @java.lang.SuppressWarnings("unchecked") + public void invoke(Req request, io.grpc.stub.StreamObserver responseObserver) { + switch (methodId) { + case METHODID_SEARCH_DOCUMENT_CHUNKS: + serviceImpl.searchDocumentChunks( + (com.google.developers.knowledge.v1.SearchDocumentChunksRequest) request, + (io.grpc.stub.StreamObserver< + com.google.developers.knowledge.v1.SearchDocumentChunksResponse>) + responseObserver); + break; + case METHODID_GET_DOCUMENT: + serviceImpl.getDocument( + (com.google.developers.knowledge.v1.GetDocumentRequest) request, + (io.grpc.stub.StreamObserver) + responseObserver); + break; + case METHODID_BATCH_GET_DOCUMENTS: + serviceImpl.batchGetDocuments( + (com.google.developers.knowledge.v1.BatchGetDocumentsRequest) request, + (io.grpc.stub.StreamObserver< + com.google.developers.knowledge.v1.BatchGetDocumentsResponse>) + responseObserver); + break; + default: + throw new AssertionError(); + } + } + + @java.lang.Override + @java.lang.SuppressWarnings("unchecked") + public io.grpc.stub.StreamObserver invoke( + io.grpc.stub.StreamObserver responseObserver) { + switch (methodId) { + default: + throw new AssertionError(); + } + } + } + + public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) { + return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) + .addMethod( + getSearchDocumentChunksMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + com.google.developers.knowledge.v1.SearchDocumentChunksRequest, + com.google.developers.knowledge.v1.SearchDocumentChunksResponse>( + service, METHODID_SEARCH_DOCUMENT_CHUNKS))) + .addMethod( + getGetDocumentMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + com.google.developers.knowledge.v1.GetDocumentRequest, + com.google.developers.knowledge.v1.Document>(service, METHODID_GET_DOCUMENT))) + .addMethod( + getBatchGetDocumentsMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + com.google.developers.knowledge.v1.BatchGetDocumentsRequest, + com.google.developers.knowledge.v1.BatchGetDocumentsResponse>( + service, METHODID_BATCH_GET_DOCUMENTS))) + .build(); + } + + private abstract static class DeveloperKnowledgeBaseDescriptorSupplier + implements io.grpc.protobuf.ProtoFileDescriptorSupplier, + io.grpc.protobuf.ProtoServiceDescriptorSupplier { + DeveloperKnowledgeBaseDescriptorSupplier() {} + + @java.lang.Override + public com.google.protobuf.Descriptors.FileDescriptor getFileDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto.getDescriptor(); + } + + @java.lang.Override + public com.google.protobuf.Descriptors.ServiceDescriptor getServiceDescriptor() { + return getFileDescriptor().findServiceByName("DeveloperKnowledge"); + } + } + + private static final class DeveloperKnowledgeFileDescriptorSupplier + extends DeveloperKnowledgeBaseDescriptorSupplier { + DeveloperKnowledgeFileDescriptorSupplier() {} + } + + private static final class DeveloperKnowledgeMethodDescriptorSupplier + extends DeveloperKnowledgeBaseDescriptorSupplier + implements io.grpc.protobuf.ProtoMethodDescriptorSupplier { + private final java.lang.String methodName; + + DeveloperKnowledgeMethodDescriptorSupplier(java.lang.String methodName) { + this.methodName = methodName; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.MethodDescriptor getMethodDescriptor() { + return getServiceDescriptor().findMethodByName(methodName); + } + } + + private static volatile io.grpc.ServiceDescriptor serviceDescriptor; + + public static io.grpc.ServiceDescriptor getServiceDescriptor() { + io.grpc.ServiceDescriptor result = serviceDescriptor; + if (result == null) { + synchronized (DeveloperKnowledgeGrpc.class) { + result = serviceDescriptor; + if (result == null) { + serviceDescriptor = + result = + io.grpc.ServiceDescriptor.newBuilder(SERVICE_NAME) + .setSchemaDescriptor(new DeveloperKnowledgeFileDescriptorSupplier()) + .addMethod(getSearchDocumentChunksMethod()) + .addMethod(getGetDocumentMethod()) + .addMethod(getBatchGetDocumentsMethod()) + .build(); + } + } + } + return result; + } +} diff --git a/java-developerknowledge/owlbot.py b/java-developerknowledge/owlbot.py new file mode 100644 index 000000000000..fbb37df70f1a --- /dev/null +++ b/java-developerknowledge/owlbot.py @@ -0,0 +1,37 @@ +# Copyright 2024 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. + +import synthtool as s +from synthtool.languages import java + +for library in s.get_staging_dirs(): + # put any special-case replacements here + s.move(library) + +s.remove_staging_dirs() +java.common_templates( + monorepo=True, + excludes=[ + ".github/*", + ".kokoro/*", + "samples/*", + "CODE_OF_CONDUCT.md", + "CONTRIBUTING.md", + "LICENSE", + "SECURITY.md", + "java.header", + "license-checks.xml", + "renovate.json", + ".gitignore" +]) \ No newline at end of file diff --git a/java-developerknowledge/pom.xml b/java-developerknowledge/pom.xml new file mode 100644 index 000000000000..4d237e02906d --- /dev/null +++ b/java-developerknowledge/pom.xml @@ -0,0 +1,55 @@ + + + 4.0.0 + com.google.cloud + google-cloud-developer-knowledge-parent + pom + 0.0.1-SNAPSHOT + Google Developer Knowledge API Parent + + Java idiomatic client for Google Cloud Platform services. + + + + com.google.cloud + google-cloud-jar-parent + 1.87.0-SNAPSHOT + ../google-cloud-jar-parent/pom.xml + + + + UTF-8 + UTF-8 + github + google-cloud-developer-knowledge-parent + + + + + + com.google.cloud + google-cloud-developer-knowledge + 0.0.1-SNAPSHOT + + + com.google.api.grpc + grpc-google-cloud-developer-knowledge-v1 + 0.0.1-SNAPSHOT + + + com.google.api.grpc + proto-google-cloud-developer-knowledge-v1 + 0.0.1-SNAPSHOT + + + + + + + google-cloud-developer-knowledge + grpc-google-cloud-developer-knowledge-v1 + proto-google-cloud-developer-knowledge-v1 + google-cloud-developer-knowledge-bom + + + diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/clirr-ignored-differences.xml b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/clirr-ignored-differences.xml new file mode 100644 index 000000000000..fe9642ffd09a --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/clirr-ignored-differences.xml @@ -0,0 +1,80 @@ + + + + + 7012 + com/google/developers/knowledge/v1/*OrBuilder + * get*(*) + + + 7012 + com/google/developers/knowledge/v1/*OrBuilder + boolean contains*(*) + + + 7012 + com/google/developers/knowledge/v1/*OrBuilder + boolean has*(*) + + + + 7006 + com/google/developers/knowledge/v1/** + * getDefaultInstanceForType() + ** + + + 7006 + com/google/developers/knowledge/v1/** + * addRepeatedField(*) + ** + + + 7006 + com/google/developers/knowledge/v1/** + * clear() + ** + + + 7006 + com/google/developers/knowledge/v1/** + * clearField(*) + ** + + + 7006 + com/google/developers/knowledge/v1/** + * clearOneof(*) + ** + + + 7006 + com/google/developers/knowledge/v1/** + * clone() + ** + + + 7006 + com/google/developers/knowledge/v1/** + * mergeUnknownFields(*) + ** + + + 7006 + com/google/developers/knowledge/v1/** + * setField(*) + ** + + + 7006 + com/google/developers/knowledge/v1/** + * setRepeatedField(*) + ** + + + 7006 + com/google/developers/knowledge/v1/** + * setUnknownFields(*) + ** + + diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/pom.xml b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/pom.xml new file mode 100644 index 000000000000..139513ed23bb --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/pom.xml @@ -0,0 +1,37 @@ + + 4.0.0 + com.google.api.grpc + proto-google-cloud-developer-knowledge-v1 + 0.0.1-SNAPSHOT + proto-google-cloud-developer-knowledge-v1 + Proto library for google-cloud-developer-knowledge + + com.google.cloud + google-cloud-developer-knowledge-parent + 0.0.1-SNAPSHOT + + + + com.google.protobuf + protobuf-java + + + com.google.api.grpc + proto-google-common-protos + + + com.google.api.grpc + proto-google-iam-v1 + + + com.google.api + api-common + + + com.google.guava + guava + + + diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsRequest.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsRequest.java new file mode 100644 index 000000000000..dc2453f89fde --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsRequest.java @@ -0,0 +1,990 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +/** + * + * + *
+ * Request message for
+ * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments].
+ * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.BatchGetDocumentsRequest} + */ +@com.google.protobuf.Generated +public final class BatchGetDocumentsRequest extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.developers.knowledge.v1.BatchGetDocumentsRequest) + BatchGetDocumentsRequestOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "BatchGetDocumentsRequest"); + } + + // Use BatchGetDocumentsRequest.newBuilder() to construct. + private BatchGetDocumentsRequest(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private BatchGetDocumentsRequest() { + names_ = com.google.protobuf.LazyStringArrayList.emptyList(); + view_ = 0; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_BatchGetDocumentsRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_BatchGetDocumentsRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.BatchGetDocumentsRequest.class, + com.google.developers.knowledge.v1.BatchGetDocumentsRequest.Builder.class); + } + + public static final int NAMES_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList names_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + /** + * + * + *
+   * Required. Specifies the names of the documents to retrieve. A maximum of 20
+   * documents can be retrieved in a batch. The documents are returned in the
+   * same order as the `names` in the request.
+   *
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return A list containing the names. + */ + public com.google.protobuf.ProtocolStringList getNamesList() { + return names_; + } + + /** + * + * + *
+   * Required. Specifies the names of the documents to retrieve. A maximum of 20
+   * documents can be retrieved in a batch. The documents are returned in the
+   * same order as the `names` in the request.
+   *
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The count of names. + */ + public int getNamesCount() { + return names_.size(); + } + + /** + * + * + *
+   * Required. Specifies the names of the documents to retrieve. A maximum of 20
+   * documents can be retrieved in a batch. The documents are returned in the
+   * same order as the `names` in the request.
+   *
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the element to return. + * @return The names at the given index. + */ + public java.lang.String getNames(int index) { + return names_.get(index); + } + + /** + * + * + *
+   * Required. Specifies the names of the documents to retrieve. A maximum of 20
+   * documents can be retrieved in a batch. The documents are returned in the
+   * same order as the `names` in the request.
+   *
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the value to return. + * @return The bytes of the names at the given index. + */ + public com.google.protobuf.ByteString getNamesBytes(int index) { + return names_.getByteString(index); + } + + public static final int VIEW_FIELD_NUMBER = 2; + private int view_ = 0; + + /** + * + * + *
+   * Optional. Specifies the
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document. If unspecified,
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * defaults to `DOCUMENT_VIEW_CONTENT`.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for view. + */ + @java.lang.Override + public int getViewValue() { + return view_; + } + + /** + * + * + *
+   * Optional. Specifies the
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document. If unspecified,
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * defaults to `DOCUMENT_VIEW_CONTENT`.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The view. + */ + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentView getView() { + com.google.developers.knowledge.v1.DocumentView result = + com.google.developers.knowledge.v1.DocumentView.forNumber(view_); + return result == null ? com.google.developers.knowledge.v1.DocumentView.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 { + for (int i = 0; i < names_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, names_.getRaw(i)); + } + if (view_ + != com.google.developers.knowledge.v1.DocumentView.DOCUMENT_VIEW_UNSPECIFIED.getNumber()) { + output.writeEnum(2, view_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + { + int dataSize = 0; + for (int i = 0; i < names_.size(); i++) { + dataSize += computeStringSizeNoTag(names_.getRaw(i)); + } + size += dataSize; + size += 1 * getNamesList().size(); + } + if (view_ + != com.google.developers.knowledge.v1.DocumentView.DOCUMENT_VIEW_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(2, view_); + } + 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.developers.knowledge.v1.BatchGetDocumentsRequest)) { + return super.equals(obj); + } + com.google.developers.knowledge.v1.BatchGetDocumentsRequest other = + (com.google.developers.knowledge.v1.BatchGetDocumentsRequest) obj; + + if (!getNamesList().equals(other.getNamesList())) return false; + if (view_ != other.view_) 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 (getNamesCount() > 0) { + hash = (37 * hash) + NAMES_FIELD_NUMBER; + hash = (53 * hash) + getNamesList().hashCode(); + } + hash = (37 * hash) + VIEW_FIELD_NUMBER; + hash = (53 * hash) + view_; + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest 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.developers.knowledge.v1.BatchGetDocumentsRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.developers.knowledge.v1.BatchGetDocumentsRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+   * Request message for
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments].
+   * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.BatchGetDocumentsRequest} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.developers.knowledge.v1.BatchGetDocumentsRequest) + com.google.developers.knowledge.v1.BatchGetDocumentsRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_BatchGetDocumentsRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_BatchGetDocumentsRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.BatchGetDocumentsRequest.class, + com.google.developers.knowledge.v1.BatchGetDocumentsRequest.Builder.class); + } + + // Construct using com.google.developers.knowledge.v1.BatchGetDocumentsRequest.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + names_ = com.google.protobuf.LazyStringArrayList.emptyList(); + view_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_BatchGetDocumentsRequest_descriptor; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.BatchGetDocumentsRequest getDefaultInstanceForType() { + return com.google.developers.knowledge.v1.BatchGetDocumentsRequest.getDefaultInstance(); + } + + @java.lang.Override + public com.google.developers.knowledge.v1.BatchGetDocumentsRequest build() { + com.google.developers.knowledge.v1.BatchGetDocumentsRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.BatchGetDocumentsRequest buildPartial() { + com.google.developers.knowledge.v1.BatchGetDocumentsRequest result = + new com.google.developers.knowledge.v1.BatchGetDocumentsRequest(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.developers.knowledge.v1.BatchGetDocumentsRequest result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + names_.makeImmutable(); + result.names_ = names_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.view_ = view_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.developers.knowledge.v1.BatchGetDocumentsRequest) { + return mergeFrom((com.google.developers.knowledge.v1.BatchGetDocumentsRequest) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.developers.knowledge.v1.BatchGetDocumentsRequest other) { + if (other == com.google.developers.knowledge.v1.BatchGetDocumentsRequest.getDefaultInstance()) + return this; + if (!other.names_.isEmpty()) { + if (names_.isEmpty()) { + names_ = other.names_; + bitField0_ |= 0x00000001; + } else { + ensureNamesIsMutable(); + names_.addAll(other.names_); + } + onChanged(); + } + if (other.view_ != 0) { + setViewValue(other.getViewValue()); + } + 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: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureNamesIsMutable(); + names_.add(s); + break; + } // case 10 + case 16: + { + view_ = input.readEnum(); + bitField0_ |= 0x00000002; + break; + } // case 16 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private com.google.protobuf.LazyStringArrayList names_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureNamesIsMutable() { + if (!names_.isModifiable()) { + names_ = new com.google.protobuf.LazyStringArrayList(names_); + } + bitField0_ |= 0x00000001; + } + + /** + * + * + *
+     * Required. Specifies the names of the documents to retrieve. A maximum of 20
+     * documents can be retrieved in a batch. The documents are returned in the
+     * same order as the `names` in the request.
+     *
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return A list containing the names. + */ + public com.google.protobuf.ProtocolStringList getNamesList() { + names_.makeImmutable(); + return names_; + } + + /** + * + * + *
+     * Required. Specifies the names of the documents to retrieve. A maximum of 20
+     * documents can be retrieved in a batch. The documents are returned in the
+     * same order as the `names` in the request.
+     *
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The count of names. + */ + public int getNamesCount() { + return names_.size(); + } + + /** + * + * + *
+     * Required. Specifies the names of the documents to retrieve. A maximum of 20
+     * documents can be retrieved in a batch. The documents are returned in the
+     * same order as the `names` in the request.
+     *
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the element to return. + * @return The names at the given index. + */ + public java.lang.String getNames(int index) { + return names_.get(index); + } + + /** + * + * + *
+     * Required. Specifies the names of the documents to retrieve. A maximum of 20
+     * documents can be retrieved in a batch. The documents are returned in the
+     * same order as the `names` in the request.
+     *
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the value to return. + * @return The bytes of the names at the given index. + */ + public com.google.protobuf.ByteString getNamesBytes(int index) { + return names_.getByteString(index); + } + + /** + * + * + *
+     * Required. Specifies the names of the documents to retrieve. A maximum of 20
+     * documents can be retrieved in a batch. The documents are returned in the
+     * same order as the `names` in the request.
+     *
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param index The index to set the value at. + * @param value The names to set. + * @return This builder for chaining. + */ + public Builder setNames(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureNamesIsMutable(); + names_.set(index, value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+     * Required. Specifies the names of the documents to retrieve. A maximum of 20
+     * documents can be retrieved in a batch. The documents are returned in the
+     * same order as the `names` in the request.
+     *
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param value The names to add. + * @return This builder for chaining. + */ + public Builder addNames(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureNamesIsMutable(); + names_.add(value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+     * Required. Specifies the names of the documents to retrieve. A maximum of 20
+     * documents can be retrieved in a batch. The documents are returned in the
+     * same order as the `names` in the request.
+     *
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param values The names to add. + * @return This builder for chaining. + */ + public Builder addAllNames(java.lang.Iterable values) { + ensureNamesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, names_); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+     * Required. Specifies the names of the documents to retrieve. A maximum of 20
+     * documents can be retrieved in a batch. The documents are returned in the
+     * same order as the `names` in the request.
+     *
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearNames() { + names_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + ; + onChanged(); + return this; + } + + /** + * + * + *
+     * Required. Specifies the names of the documents to retrieve. A maximum of 20
+     * documents can be retrieved in a batch. The documents are returned in the
+     * same order as the `names` in the request.
+     *
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param value The bytes of the names to add. + * @return This builder for chaining. + */ + public Builder addNamesBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureNamesIsMutable(); + names_.add(value); + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private int view_ = 0; + + /** + * + * + *
+     * Optional. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document. If unspecified,
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * defaults to `DOCUMENT_VIEW_CONTENT`.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for view. + */ + @java.lang.Override + public int getViewValue() { + return view_; + } + + /** + * + * + *
+     * Optional. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document. If unspecified,
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * defaults to `DOCUMENT_VIEW_CONTENT`.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enum numeric value on the wire for view to set. + * @return This builder for chaining. + */ + public Builder setViewValue(int value) { + view_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document. If unspecified,
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * defaults to `DOCUMENT_VIEW_CONTENT`.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The view. + */ + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentView getView() { + com.google.developers.knowledge.v1.DocumentView result = + com.google.developers.knowledge.v1.DocumentView.forNumber(view_); + return result == null ? com.google.developers.knowledge.v1.DocumentView.UNRECOGNIZED : result; + } + + /** + * + * + *
+     * Optional. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document. If unspecified,
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * defaults to `DOCUMENT_VIEW_CONTENT`.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The view to set. + * @return This builder for chaining. + */ + public Builder setView(com.google.developers.knowledge.v1.DocumentView value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000002; + view_ = value.getNumber(); + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document. If unspecified,
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * defaults to `DOCUMENT_VIEW_CONTENT`.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearView() { + bitField0_ = (bitField0_ & ~0x00000002); + view_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.developers.knowledge.v1.BatchGetDocumentsRequest) + } + + // @@protoc_insertion_point(class_scope:google.developers.knowledge.v1.BatchGetDocumentsRequest) + private static final com.google.developers.knowledge.v1.BatchGetDocumentsRequest DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.developers.knowledge.v1.BatchGetDocumentsRequest(); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public BatchGetDocumentsRequest 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.developers.knowledge.v1.BatchGetDocumentsRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsRequestOrBuilder.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsRequestOrBuilder.java new file mode 100644 index 000000000000..37c4de58a46c --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsRequestOrBuilder.java @@ -0,0 +1,148 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +@com.google.protobuf.Generated +public interface BatchGetDocumentsRequestOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.developers.knowledge.v1.BatchGetDocumentsRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Required. Specifies the names of the documents to retrieve. A maximum of 20
+   * documents can be retrieved in a batch. The documents are returned in the
+   * same order as the `names` in the request.
+   *
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return A list containing the names. + */ + java.util.List getNamesList(); + + /** + * + * + *
+   * Required. Specifies the names of the documents to retrieve. A maximum of 20
+   * documents can be retrieved in a batch. The documents are returned in the
+   * same order as the `names` in the request.
+   *
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The count of names. + */ + int getNamesCount(); + + /** + * + * + *
+   * Required. Specifies the names of the documents to retrieve. A maximum of 20
+   * documents can be retrieved in a batch. The documents are returned in the
+   * same order as the `names` in the request.
+   *
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the element to return. + * @return The names at the given index. + */ + java.lang.String getNames(int index); + + /** + * + * + *
+   * Required. Specifies the names of the documents to retrieve. A maximum of 20
+   * documents can be retrieved in a batch. The documents are returned in the
+   * same order as the `names` in the request.
+   *
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * repeated string names = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the value to return. + * @return The bytes of the names at the given index. + */ + com.google.protobuf.ByteString getNamesBytes(int index); + + /** + * + * + *
+   * Optional. Specifies the
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document. If unspecified,
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * defaults to `DOCUMENT_VIEW_CONTENT`.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for view. + */ + int getViewValue(); + + /** + * + * + *
+   * Optional. Specifies the
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document. If unspecified,
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * defaults to `DOCUMENT_VIEW_CONTENT`.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The view. + */ + com.google.developers.knowledge.v1.DocumentView getView(); +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsResponse.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsResponse.java new file mode 100644 index 000000000000..72b74f85de0b --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsResponse.java @@ -0,0 +1,931 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +/** + * + * + *
+ * Response message for
+ * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments].
+ * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.BatchGetDocumentsResponse} + */ +@com.google.protobuf.Generated +public final class BatchGetDocumentsResponse extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.developers.knowledge.v1.BatchGetDocumentsResponse) + BatchGetDocumentsResponseOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "BatchGetDocumentsResponse"); + } + + // Use BatchGetDocumentsResponse.newBuilder() to construct. + private BatchGetDocumentsResponse(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private BatchGetDocumentsResponse() { + documents_ = java.util.Collections.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_BatchGetDocumentsResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_BatchGetDocumentsResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.BatchGetDocumentsResponse.class, + com.google.developers.knowledge.v1.BatchGetDocumentsResponse.Builder.class); + } + + public static final int DOCUMENTS_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private java.util.List documents_; + + /** + * + * + *
+   * Contains the documents requested.
+   * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + @java.lang.Override + public java.util.List getDocumentsList() { + return documents_; + } + + /** + * + * + *
+   * Contains the documents requested.
+   * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + @java.lang.Override + public java.util.List + getDocumentsOrBuilderList() { + return documents_; + } + + /** + * + * + *
+   * Contains the documents requested.
+   * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + @java.lang.Override + public int getDocumentsCount() { + return documents_.size(); + } + + /** + * + * + *
+   * Contains the documents requested.
+   * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + @java.lang.Override + public com.google.developers.knowledge.v1.Document getDocuments(int index) { + return documents_.get(index); + } + + /** + * + * + *
+   * Contains the documents requested.
+   * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentOrBuilder getDocumentsOrBuilder(int index) { + return documents_.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 < documents_.size(); i++) { + output.writeMessage(1, documents_.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 < documents_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, documents_.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.developers.knowledge.v1.BatchGetDocumentsResponse)) { + return super.equals(obj); + } + com.google.developers.knowledge.v1.BatchGetDocumentsResponse other = + (com.google.developers.knowledge.v1.BatchGetDocumentsResponse) obj; + + if (!getDocumentsList().equals(other.getDocumentsList())) 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 (getDocumentsCount() > 0) { + hash = (37 * hash) + DOCUMENTS_FIELD_NUMBER; + hash = (53 * hash) + getDocumentsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse 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.developers.knowledge.v1.BatchGetDocumentsResponse parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.developers.knowledge.v1.BatchGetDocumentsResponse prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+   * Response message for
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments].
+   * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.BatchGetDocumentsResponse} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.developers.knowledge.v1.BatchGetDocumentsResponse) + com.google.developers.knowledge.v1.BatchGetDocumentsResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_BatchGetDocumentsResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_BatchGetDocumentsResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.BatchGetDocumentsResponse.class, + com.google.developers.knowledge.v1.BatchGetDocumentsResponse.Builder.class); + } + + // Construct using com.google.developers.knowledge.v1.BatchGetDocumentsResponse.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (documentsBuilder_ == null) { + documents_ = java.util.Collections.emptyList(); + } else { + documents_ = null; + documentsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_BatchGetDocumentsResponse_descriptor; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.BatchGetDocumentsResponse + getDefaultInstanceForType() { + return com.google.developers.knowledge.v1.BatchGetDocumentsResponse.getDefaultInstance(); + } + + @java.lang.Override + public com.google.developers.knowledge.v1.BatchGetDocumentsResponse build() { + com.google.developers.knowledge.v1.BatchGetDocumentsResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.BatchGetDocumentsResponse buildPartial() { + com.google.developers.knowledge.v1.BatchGetDocumentsResponse result = + new com.google.developers.knowledge.v1.BatchGetDocumentsResponse(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields( + com.google.developers.knowledge.v1.BatchGetDocumentsResponse result) { + if (documentsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + documents_ = java.util.Collections.unmodifiableList(documents_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.documents_ = documents_; + } else { + result.documents_ = documentsBuilder_.build(); + } + } + + private void buildPartial0( + com.google.developers.knowledge.v1.BatchGetDocumentsResponse result) { + int from_bitField0_ = bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.developers.knowledge.v1.BatchGetDocumentsResponse) { + return mergeFrom((com.google.developers.knowledge.v1.BatchGetDocumentsResponse) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.developers.knowledge.v1.BatchGetDocumentsResponse other) { + if (other + == com.google.developers.knowledge.v1.BatchGetDocumentsResponse.getDefaultInstance()) + return this; + if (documentsBuilder_ == null) { + if (!other.documents_.isEmpty()) { + if (documents_.isEmpty()) { + documents_ = other.documents_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureDocumentsIsMutable(); + documents_.addAll(other.documents_); + } + onChanged(); + } + } else { + if (!other.documents_.isEmpty()) { + if (documentsBuilder_.isEmpty()) { + documentsBuilder_.dispose(); + documentsBuilder_ = null; + documents_ = other.documents_; + bitField0_ = (bitField0_ & ~0x00000001); + documentsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetDocumentsFieldBuilder() + : null; + } else { + documentsBuilder_.addAllMessages(other.documents_); + } + } + } + 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.developers.knowledge.v1.Document m = + input.readMessage( + com.google.developers.knowledge.v1.Document.parser(), extensionRegistry); + if (documentsBuilder_ == null) { + ensureDocumentsIsMutable(); + documents_.add(m); + } else { + documentsBuilder_.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 documents_ = + java.util.Collections.emptyList(); + + private void ensureDocumentsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + documents_ = + new java.util.ArrayList(documents_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.developers.knowledge.v1.Document, + com.google.developers.knowledge.v1.Document.Builder, + com.google.developers.knowledge.v1.DocumentOrBuilder> + documentsBuilder_; + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public java.util.List getDocumentsList() { + if (documentsBuilder_ == null) { + return java.util.Collections.unmodifiableList(documents_); + } else { + return documentsBuilder_.getMessageList(); + } + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public int getDocumentsCount() { + if (documentsBuilder_ == null) { + return documents_.size(); + } else { + return documentsBuilder_.getCount(); + } + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public com.google.developers.knowledge.v1.Document getDocuments(int index) { + if (documentsBuilder_ == null) { + return documents_.get(index); + } else { + return documentsBuilder_.getMessage(index); + } + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public Builder setDocuments(int index, com.google.developers.knowledge.v1.Document value) { + if (documentsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDocumentsIsMutable(); + documents_.set(index, value); + onChanged(); + } else { + documentsBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public Builder setDocuments( + int index, com.google.developers.knowledge.v1.Document.Builder builderForValue) { + if (documentsBuilder_ == null) { + ensureDocumentsIsMutable(); + documents_.set(index, builderForValue.build()); + onChanged(); + } else { + documentsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public Builder addDocuments(com.google.developers.knowledge.v1.Document value) { + if (documentsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDocumentsIsMutable(); + documents_.add(value); + onChanged(); + } else { + documentsBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public Builder addDocuments(int index, com.google.developers.knowledge.v1.Document value) { + if (documentsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDocumentsIsMutable(); + documents_.add(index, value); + onChanged(); + } else { + documentsBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public Builder addDocuments( + com.google.developers.knowledge.v1.Document.Builder builderForValue) { + if (documentsBuilder_ == null) { + ensureDocumentsIsMutable(); + documents_.add(builderForValue.build()); + onChanged(); + } else { + documentsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public Builder addDocuments( + int index, com.google.developers.knowledge.v1.Document.Builder builderForValue) { + if (documentsBuilder_ == null) { + ensureDocumentsIsMutable(); + documents_.add(index, builderForValue.build()); + onChanged(); + } else { + documentsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public Builder addAllDocuments( + java.lang.Iterable values) { + if (documentsBuilder_ == null) { + ensureDocumentsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, documents_); + onChanged(); + } else { + documentsBuilder_.addAllMessages(values); + } + return this; + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public Builder clearDocuments() { + if (documentsBuilder_ == null) { + documents_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + documentsBuilder_.clear(); + } + return this; + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public Builder removeDocuments(int index) { + if (documentsBuilder_ == null) { + ensureDocumentsIsMutable(); + documents_.remove(index); + onChanged(); + } else { + documentsBuilder_.remove(index); + } + return this; + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public com.google.developers.knowledge.v1.Document.Builder getDocumentsBuilder(int index) { + return internalGetDocumentsFieldBuilder().getBuilder(index); + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public com.google.developers.knowledge.v1.DocumentOrBuilder getDocumentsOrBuilder(int index) { + if (documentsBuilder_ == null) { + return documents_.get(index); + } else { + return documentsBuilder_.getMessageOrBuilder(index); + } + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public java.util.List + getDocumentsOrBuilderList() { + if (documentsBuilder_ != null) { + return documentsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(documents_); + } + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public com.google.developers.knowledge.v1.Document.Builder addDocumentsBuilder() { + return internalGetDocumentsFieldBuilder() + .addBuilder(com.google.developers.knowledge.v1.Document.getDefaultInstance()); + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public com.google.developers.knowledge.v1.Document.Builder addDocumentsBuilder(int index) { + return internalGetDocumentsFieldBuilder() + .addBuilder(index, com.google.developers.knowledge.v1.Document.getDefaultInstance()); + } + + /** + * + * + *
+     * Contains the documents requested.
+     * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + public java.util.List + getDocumentsBuilderList() { + return internalGetDocumentsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.developers.knowledge.v1.Document, + com.google.developers.knowledge.v1.Document.Builder, + com.google.developers.knowledge.v1.DocumentOrBuilder> + internalGetDocumentsFieldBuilder() { + if (documentsBuilder_ == null) { + documentsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.developers.knowledge.v1.Document, + com.google.developers.knowledge.v1.Document.Builder, + com.google.developers.knowledge.v1.DocumentOrBuilder>( + documents_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); + documents_ = null; + } + return documentsBuilder_; + } + + // @@protoc_insertion_point(builder_scope:google.developers.knowledge.v1.BatchGetDocumentsResponse) + } + + // @@protoc_insertion_point(class_scope:google.developers.knowledge.v1.BatchGetDocumentsResponse) + private static final com.google.developers.knowledge.v1.BatchGetDocumentsResponse + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.developers.knowledge.v1.BatchGetDocumentsResponse(); + } + + public static com.google.developers.knowledge.v1.BatchGetDocumentsResponse getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public BatchGetDocumentsResponse 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.developers.knowledge.v1.BatchGetDocumentsResponse getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsResponseOrBuilder.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsResponseOrBuilder.java new file mode 100644 index 000000000000..13cffe84e5df --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/BatchGetDocumentsResponseOrBuilder.java @@ -0,0 +1,84 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +@com.google.protobuf.Generated +public interface BatchGetDocumentsResponseOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.developers.knowledge.v1.BatchGetDocumentsResponse) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Contains the documents requested.
+   * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + java.util.List getDocumentsList(); + + /** + * + * + *
+   * Contains the documents requested.
+   * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + com.google.developers.knowledge.v1.Document getDocuments(int index); + + /** + * + * + *
+   * Contains the documents requested.
+   * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + int getDocumentsCount(); + + /** + * + * + *
+   * Contains the documents requested.
+   * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + java.util.List + getDocumentsOrBuilderList(); + + /** + * + * + *
+   * Contains the documents requested.
+   * 
+ * + * repeated .google.developers.knowledge.v1.Document documents = 1; + */ + com.google.developers.knowledge.v1.DocumentOrBuilder getDocumentsOrBuilder(int index); +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeProto.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeProto.java new file mode 100644 index 000000000000..c2a7a8a1e7df --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DeveloperKnowledgeProto.java @@ -0,0 +1,234 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +@com.google.protobuf.Generated +public final class DeveloperKnowledgeProto extends com.google.protobuf.GeneratedFile { + private DeveloperKnowledgeProto() {} + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "DeveloperKnowledgeProto"); + } + + 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_developers_knowledge_v1_Document_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_developers_knowledge_v1_Document_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_developers_knowledge_v1_SearchDocumentChunksRequest_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_developers_knowledge_v1_SearchDocumentChunksRequest_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_developers_knowledge_v1_SearchDocumentChunksResponse_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_developers_knowledge_v1_SearchDocumentChunksResponse_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_developers_knowledge_v1_GetDocumentRequest_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_developers_knowledge_v1_GetDocumentRequest_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_developers_knowledge_v1_BatchGetDocumentsRequest_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_developers_knowledge_v1_BatchGetDocumentsRequest_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_developers_knowledge_v1_BatchGetDocumentsResponse_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_developers_knowledge_v1_BatchGetDocumentsResponse_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_developers_knowledge_v1_DocumentChunk_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_developers_knowledge_v1_DocumentChunk_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" + + "7google/developers/knowledge/v1/developerknowledge.proto\022\036google.developers.kno" + + "wledge.v1\032\034google/api/annotations.proto\032" + + "\027google/api/client.proto\032\037google/api/fie" + + "ld_behavior.proto\032\031google/api/resource.p" + + "roto\032\037google/protobuf/timestamp.proto\"\340\002\n" + + "\010Document\022\021\n" + + "\004name\030\001 \001(\tB\003\340A\010\022\020\n" + + "\003uri\030\002 \001(\tB\003\340A\003\022\024\n" + + "\007content\030\003 \001(\tB\003\340A\003\022\030\n" + + "\013description\030\004 \001(\tB\003\340A\003\022\030\n" + + "\013data_source\030\005 \001(\tB\003\340A\003\022\022\n" + + "\005title\030\006 \001(\tB\003\340A\003\0224\n" + + "\013update_time\030\007 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022?\n" + + "\004view\030\010" + + " \001(\0162,.google.developers.knowledge.v1.DocumentViewB\003\340A\003:Z\352AW\n" + + "*developerknowledge.googleapis.com/Document\022\024documents/{document}*" + + "\tdocuments2\010document\"w\n" + + "\033SearchDocumentChunksRequest\022\022\n" + + "\005query\030\001 \001(\tB\003\340A\002\022\026\n" + + "\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\n" + + "page_token\030\003 \001(\tB\003\340A\001\022\023\n" + + "\006filter\030\004 \001(\tB\003\340A\001\"|\n" + + "\034SearchDocumentChunksResponse\022>\n" + + "\007results\030\001 \003(\0132-.google.developers.knowledge.v1.DocumentChunk\022\034\n" + + "\017next_page_token\030\002 \001(\tB\003\340A\001\"\227\001\n" + + "\022GetDocumentRequest\022@\n" + + "\004name\030\001 \001(\tB2\340A\002\372A,\n" + + "*developerknowledge.googleapis.com/Document\022?\n" + + "\004view\030\002" + + " \001(\0162,.google.developers.knowledge.v1.DocumentViewB\003\340A\001\"\236\001\n" + + "\030BatchGetDocumentsRequest\022A\n" + + "\005names\030\001 \003(\tB2\340A\002\372A,\n" + + "*developerknowledge.googleapis.com/Document\022?\n" + + "\004view\030\002" + + " \001(\0162,.google.developers.knowledge.v1.DocumentViewB\003\340A\001\"X\n" + + "\031BatchGetDocumentsResponse\022;\n" + + "\tdocuments\030\001 \003(\0132(.google.developers.knowledge.v1.Document\"\273\001\n\r" + + "DocumentChunk\022B\n" + + "\006parent\030\001 \001(\tB2\340A\003\372A,\n" + + "*developerknowledge.googleapis.com/Document\022\017\n" + + "\002id\030\002 \001(\tB\003\340A\003\022\024\n" + + "\007content\030\003 \001(\tB\003\340A\003\022?\n" + + "\010document\030\004" + + " \001(\0132(.google.developers.knowledge.v1.DocumentB\003\340A\003*y\n" + + "\014DocumentView\022\035\n" + + "\031DOCUMENT_VIEW_UNSPECIFIED\020\000\022\027\n" + + "\023DOCUMENT_VIEW_BASIC\020\001\022\026\n" + + "\022DOCUMENT_VIEW_FULL\020\002\022\031\n" + + "\025DOCUMENT_VIEW_CONTENT\020\0032\354\004\n" + + "\022DeveloperKnowledge\022\275\001\n" + + "\024SearchDocumentChunks\022;.google.developers.knowledge.v1.S" + + "earchDocumentChunksRequest\032<.google.developers.knowledge.v1.SearchDocumentChunks" + + "Response\"*\202\323\344\223\002$\022\"/v1/documents:searchDocumentChunks\022\223\001\n" + + "\013GetDocument\0222.google.developers.knowledge.v1.GetDocumentRequest" + + "\032(.google.developers.knowledge.v1.Docume" + + "nt\"&\332A\004name\202\323\344\223\002\031\022\027/v1/{name=documents/**}\022\250\001\n" + + "\021BatchGetDocuments\0228.google.developers.knowledge.v1.BatchGetDocumentsReque" + + "st\0329.google.developers.knowledge.v1.Batc" + + "hGetDocumentsResponse\"\036\202\323\344\223\002\030\022\026/v1/docum" + + "ents:batchGet\032U\312A!developerknowledge.goo" + + "gleapis.com\322A.https://www.googleapis.com/auth/cloud-platformB\211\002\n" + + "\"com.google.developers.knowledge.v1B\027DeveloperKnowledgeP" + + "rotoP\001ZGgoogle.golang.org/genproto/googleapis/developers/knowledge/v1;knowledge\252" + + "\002\'Google.Developers.DeveloperKnowledge.V" + + "1\312\002\'Google\\Developers\\DeveloperKnowledge" + + "\\V1\352\002*Google::Developers::DeveloperKnowledge::V1b\006proto3" + }; + descriptor = + com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( + descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + com.google.api.AnnotationsProto.getDescriptor(), + com.google.api.ClientProto.getDescriptor(), + com.google.api.FieldBehaviorProto.getDescriptor(), + com.google.api.ResourceProto.getDescriptor(), + com.google.protobuf.TimestampProto.getDescriptor(), + }); + internal_static_google_developers_knowledge_v1_Document_descriptor = + getDescriptor().getMessageType(0); + internal_static_google_developers_knowledge_v1_Document_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_developers_knowledge_v1_Document_descriptor, + new java.lang.String[] { + "Name", "Uri", "Content", "Description", "DataSource", "Title", "UpdateTime", "View", + }); + internal_static_google_developers_knowledge_v1_SearchDocumentChunksRequest_descriptor = + getDescriptor().getMessageType(1); + internal_static_google_developers_knowledge_v1_SearchDocumentChunksRequest_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_developers_knowledge_v1_SearchDocumentChunksRequest_descriptor, + new java.lang.String[] { + "Query", "PageSize", "PageToken", "Filter", + }); + internal_static_google_developers_knowledge_v1_SearchDocumentChunksResponse_descriptor = + getDescriptor().getMessageType(2); + internal_static_google_developers_knowledge_v1_SearchDocumentChunksResponse_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_developers_knowledge_v1_SearchDocumentChunksResponse_descriptor, + new java.lang.String[] { + "Results", "NextPageToken", + }); + internal_static_google_developers_knowledge_v1_GetDocumentRequest_descriptor = + getDescriptor().getMessageType(3); + internal_static_google_developers_knowledge_v1_GetDocumentRequest_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_developers_knowledge_v1_GetDocumentRequest_descriptor, + new java.lang.String[] { + "Name", "View", + }); + internal_static_google_developers_knowledge_v1_BatchGetDocumentsRequest_descriptor = + getDescriptor().getMessageType(4); + internal_static_google_developers_knowledge_v1_BatchGetDocumentsRequest_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_developers_knowledge_v1_BatchGetDocumentsRequest_descriptor, + new java.lang.String[] { + "Names", "View", + }); + internal_static_google_developers_knowledge_v1_BatchGetDocumentsResponse_descriptor = + getDescriptor().getMessageType(5); + internal_static_google_developers_knowledge_v1_BatchGetDocumentsResponse_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_developers_knowledge_v1_BatchGetDocumentsResponse_descriptor, + new java.lang.String[] { + "Documents", + }); + internal_static_google_developers_knowledge_v1_DocumentChunk_descriptor = + getDescriptor().getMessageType(6); + internal_static_google_developers_knowledge_v1_DocumentChunk_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_developers_knowledge_v1_DocumentChunk_descriptor, + new java.lang.String[] { + "Parent", "Id", "Content", "Document", + }); + descriptor.resolveAllFeaturesImmutable(); + com.google.api.AnnotationsProto.getDescriptor(); + com.google.api.ClientProto.getDescriptor(); + com.google.api.FieldBehaviorProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); + com.google.protobuf.TimestampProto.getDescriptor(); + 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.ClientProto.oauthScopes); + registry.add(com.google.api.ResourceProto.resource); + registry.add(com.google.api.ResourceProto.resourceReference); + com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( + descriptor, registry); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/Document.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/Document.java new file mode 100644 index 000000000000..abdcd48c9469 --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/Document.java @@ -0,0 +1,2074 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +/** + * + * + *
+ * A Document represents a piece of content from the Developer Knowledge corpus.
+ * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.Document} + */ +@com.google.protobuf.Generated +public final class Document extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.developers.knowledge.v1.Document) + DocumentOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "Document"); + } + + // Use Document.newBuilder() to construct. + private Document(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private Document() { + name_ = ""; + uri_ = ""; + content_ = ""; + description_ = ""; + dataSource_ = ""; + title_ = ""; + view_ = 0; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_Document_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_Document_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.Document.class, + com.google.developers.knowledge.v1.Document.Builder.class); + } + + private int bitField0_; + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
+   * Identifier. Contains the resource name of the document.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * + * @return The name. + */ + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } + } + + /** + * + * + *
+   * Identifier. Contains the resource name of the document.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int URI_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object uri_ = ""; + + /** + * + * + *
+   * Output only. Provides the URI of the content, such as
+   * `docs.cloud.google.com/storage/docs/creating-buckets`.
+   * 
+ * + * 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. Provides the URI of the content, such as
+   * `docs.cloud.google.com/storage/docs/creating-buckets`.
+   * 
+ * + * 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 CONTENT_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object content_ = ""; + + /** + * + * + *
+   * Output only. Contains the full content of the document in Markdown format.
+   * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The content. + */ + @java.lang.Override + public java.lang.String getContent() { + java.lang.Object ref = content_; + 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(); + content_ = s; + return s; + } + } + + /** + * + * + *
+   * Output only. Contains the full content of the document in Markdown format.
+   * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for content. + */ + @java.lang.Override + public com.google.protobuf.ByteString getContentBytes() { + java.lang.Object ref = content_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + content_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DESCRIPTION_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private volatile java.lang.Object description_ = ""; + + /** + * + * + *
+   * Output only. Provides a description of the document.
+   * 
+ * + * string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The description. + */ + @java.lang.Override + public java.lang.String getDescription() { + java.lang.Object ref = description_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + description_ = s; + return s; + } + } + + /** + * + * + *
+   * Output only. Provides a description of the document.
+   * 
+ * + * string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for description. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDescriptionBytes() { + java.lang.Object ref = description_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + description_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DATA_SOURCE_FIELD_NUMBER = 5; + + @SuppressWarnings("serial") + private volatile java.lang.Object dataSource_ = ""; + + /** + * + * + *
+   * Output only. Specifies the data source of the document.
+   * Example data source: `firebase.google.com`
+   * 
+ * + * string data_source = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The dataSource. + */ + @java.lang.Override + public java.lang.String getDataSource() { + java.lang.Object ref = dataSource_; + 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(); + dataSource_ = s; + return s; + } + } + + /** + * + * + *
+   * Output only. Specifies the data source of the document.
+   * Example data source: `firebase.google.com`
+   * 
+ * + * string data_source = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for dataSource. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDataSourceBytes() { + java.lang.Object ref = dataSource_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + dataSource_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int TITLE_FIELD_NUMBER = 6; + + @SuppressWarnings("serial") + private volatile java.lang.Object title_ = ""; + + /** + * + * + *
+   * Output only. Provides the title of the document.
+   * 
+ * + * string title = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The title. + */ + @java.lang.Override + public java.lang.String getTitle() { + java.lang.Object ref = title_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + title_ = s; + return s; + } + } + + /** + * + * + *
+   * Output only. Provides the title of the document.
+   * 
+ * + * string title = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for title. + */ + @java.lang.Override + public com.google.protobuf.ByteString getTitleBytes() { + java.lang.Object ref = title_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + title_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int UPDATE_TIME_FIELD_NUMBER = 7; + private com.google.protobuf.Timestamp updateTime_; + + /** + * + * + *
+   * Output only. Represents the timestamp when the content or metadata of the
+   * document was last updated.
+   * 
+ * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + @java.lang.Override + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
+   * Output only. Represents the timestamp when the content or metadata of the
+   * document was last updated.
+   * 
+ * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getUpdateTime() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + /** + * + * + *
+   * Output only. Represents the timestamp when the content or metadata of the
+   * document was last updated.
+   * 
+ * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_; + } + + public static final int VIEW_FIELD_NUMBER = 8; + private int view_ = 0; + + /** + * + * + *
+   * Output only. Specifies the
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The enum numeric value on the wire for view. + */ + @java.lang.Override + public int getViewValue() { + return view_; + } + + /** + * + * + *
+   * Output only. Specifies the
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The view. + */ + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentView getView() { + com.google.developers.knowledge.v1.DocumentView result = + com.google.developers.knowledge.v1.DocumentView.forNumber(view_); + return result == null ? com.google.developers.knowledge.v1.DocumentView.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.GeneratedMessage.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, name_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uri_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, uri_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(content_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, content_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, description_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataSource_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 5, dataSource_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(title_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 6, title_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(7, getUpdateTime()); + } + if (view_ + != com.google.developers.knowledge.v1.DocumentView.DOCUMENT_VIEW_UNSPECIFIED.getNumber()) { + output.writeEnum(8, view_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uri_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, uri_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(content_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, content_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(4, description_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataSource_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(5, dataSource_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(title_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(6, title_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getUpdateTime()); + } + if (view_ + != com.google.developers.knowledge.v1.DocumentView.DOCUMENT_VIEW_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(8, view_); + } + 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.developers.knowledge.v1.Document)) { + return super.equals(obj); + } + com.google.developers.knowledge.v1.Document other = + (com.google.developers.knowledge.v1.Document) obj; + + if (!getName().equals(other.getName())) return false; + if (!getUri().equals(other.getUri())) return false; + if (!getContent().equals(other.getContent())) return false; + if (!getDescription().equals(other.getDescription())) return false; + if (!getDataSource().equals(other.getDataSource())) return false; + if (!getTitle().equals(other.getTitle())) return false; + if (hasUpdateTime() != other.hasUpdateTime()) return false; + if (hasUpdateTime()) { + if (!getUpdateTime().equals(other.getUpdateTime())) return false; + } + if (view_ != other.view_) 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) + URI_FIELD_NUMBER; + hash = (53 * hash) + getUri().hashCode(); + hash = (37 * hash) + CONTENT_FIELD_NUMBER; + hash = (53 * hash) + getContent().hashCode(); + hash = (37 * hash) + DESCRIPTION_FIELD_NUMBER; + hash = (53 * hash) + getDescription().hashCode(); + hash = (37 * hash) + DATA_SOURCE_FIELD_NUMBER; + hash = (53 * hash) + getDataSource().hashCode(); + hash = (37 * hash) + TITLE_FIELD_NUMBER; + hash = (53 * hash) + getTitle().hashCode(); + if (hasUpdateTime()) { + hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getUpdateTime().hashCode(); + } + hash = (37 * hash) + VIEW_FIELD_NUMBER; + hash = (53 * hash) + view_; + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.developers.knowledge.v1.Document parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.Document parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.Document parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.Document 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.developers.knowledge.v1.Document parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.Document parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.Document parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.Document parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.Document parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.Document parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.Document parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.Document parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.developers.knowledge.v1.Document prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+   * A Document represents a piece of content from the Developer Knowledge corpus.
+   * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.Document} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.developers.knowledge.v1.Document) + com.google.developers.knowledge.v1.DocumentOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_Document_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_Document_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.Document.class, + com.google.developers.knowledge.v1.Document.Builder.class); + } + + // Construct using com.google.developers.knowledge.v1.Document.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetUpdateTimeFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + uri_ = ""; + content_ = ""; + description_ = ""; + dataSource_ = ""; + title_ = ""; + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + view_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_Document_descriptor; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.Document getDefaultInstanceForType() { + return com.google.developers.knowledge.v1.Document.getDefaultInstance(); + } + + @java.lang.Override + public com.google.developers.knowledge.v1.Document build() { + com.google.developers.knowledge.v1.Document result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.Document buildPartial() { + com.google.developers.knowledge.v1.Document result = + new com.google.developers.knowledge.v1.Document(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.developers.knowledge.v1.Document result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.uri_ = uri_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.content_ = content_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.description_ = description_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.dataSource_ = dataSource_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.title_ = title_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000040) != 0)) { + result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.view_ = view_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.developers.knowledge.v1.Document) { + return mergeFrom((com.google.developers.knowledge.v1.Document) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.developers.knowledge.v1.Document other) { + if (other == com.google.developers.knowledge.v1.Document.getDefaultInstance()) return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getUri().isEmpty()) { + uri_ = other.uri_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getContent().isEmpty()) { + content_ = other.content_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (!other.getDescription().isEmpty()) { + description_ = other.description_; + bitField0_ |= 0x00000008; + onChanged(); + } + if (!other.getDataSource().isEmpty()) { + dataSource_ = other.dataSource_; + bitField0_ |= 0x00000010; + onChanged(); + } + if (!other.getTitle().isEmpty()) { + title_ = other.title_; + bitField0_ |= 0x00000020; + onChanged(); + } + if (other.hasUpdateTime()) { + mergeUpdateTime(other.getUpdateTime()); + } + if (other.view_ != 0) { + setViewValue(other.getViewValue()); + } + 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: + { + uri_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + content_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: + { + description_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 + case 42: + { + dataSource_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: + { + title_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 50 + case 58: + { + input.readMessage( + internalGetUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 58 + case 64: + { + view_ = input.readEnum(); + bitField0_ |= 0x00000080; + break; + } // case 64 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object name_ = ""; + + /** + * + * + *
+     * Identifier. Contains the resource name of the document.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Identifier. Contains the resource name of the document.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * + * @return The bytes for name. + */ + public com.google.protobuf.ByteString getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Identifier. Contains the resource name of the document.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + name_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+     * Identifier. Contains the resource name of the document.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * + * @return This builder for chaining. + */ + public Builder clearName() { + name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
+     * Identifier. Contains the resource name of the document.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + name_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object uri_ = ""; + + /** + * + * + *
+     * Output only. Provides the URI of the content, such as
+     * `docs.cloud.google.com/storage/docs/creating-buckets`.
+     * 
+ * + * 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. Provides the URI of the content, such as
+     * `docs.cloud.google.com/storage/docs/creating-buckets`.
+     * 
+ * + * 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. Provides the URI of the content, such as
+     * `docs.cloud.google.com/storage/docs/creating-buckets`.
+     * 
+ * + * 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. Provides the URI of the content, such as
+     * `docs.cloud.google.com/storage/docs/creating-buckets`.
+     * 
+ * + * 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. Provides the URI of the content, such as
+     * `docs.cloud.google.com/storage/docs/creating-buckets`.
+     * 
+ * + * 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 content_ = ""; + + /** + * + * + *
+     * Output only. Contains the full content of the document in Markdown format.
+     * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The content. + */ + public java.lang.String getContent() { + java.lang.Object ref = content_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + content_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Output only. Contains the full content of the document in Markdown format.
+     * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for content. + */ + public com.google.protobuf.ByteString getContentBytes() { + java.lang.Object ref = content_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + content_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Output only. Contains the full content of the document in Markdown format.
+     * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The content to set. + * @return This builder for chaining. + */ + public Builder setContent(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + content_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Contains the full content of the document in Markdown format.
+     * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearContent() { + content_ = getDefaultInstance().getContent(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Contains the full content of the document in Markdown format.
+     * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for content to set. + * @return This builder for chaining. + */ + public Builder setContentBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + content_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private java.lang.Object description_ = ""; + + /** + * + * + *
+     * Output only. Provides a description of the document.
+     * 
+ * + * string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The description. + */ + public java.lang.String getDescription() { + java.lang.Object ref = description_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + description_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Output only. Provides a description of the document.
+     * 
+ * + * string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for description. + */ + public com.google.protobuf.ByteString getDescriptionBytes() { + java.lang.Object ref = description_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + description_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Output only. Provides a description of the document.
+     * 
+ * + * string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The description to set. + * @return This builder for chaining. + */ + public Builder setDescription(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + description_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Provides a description of the document.
+     * 
+ * + * string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearDescription() { + description_ = getDefaultInstance().getDescription(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Provides a description of the document.
+     * 
+ * + * string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for description to set. + * @return This builder for chaining. + */ + public Builder setDescriptionBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + description_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + private java.lang.Object dataSource_ = ""; + + /** + * + * + *
+     * Output only. Specifies the data source of the document.
+     * Example data source: `firebase.google.com`
+     * 
+ * + * string data_source = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The dataSource. + */ + public java.lang.String getDataSource() { + java.lang.Object ref = dataSource_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + dataSource_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Output only. Specifies the data source of the document.
+     * Example data source: `firebase.google.com`
+     * 
+ * + * string data_source = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for dataSource. + */ + public com.google.protobuf.ByteString getDataSourceBytes() { + java.lang.Object ref = dataSource_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + dataSource_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Output only. Specifies the data source of the document.
+     * Example data source: `firebase.google.com`
+     * 
+ * + * string data_source = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The dataSource to set. + * @return This builder for chaining. + */ + public Builder setDataSource(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + dataSource_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Specifies the data source of the document.
+     * Example data source: `firebase.google.com`
+     * 
+ * + * string data_source = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearDataSource() { + dataSource_ = getDefaultInstance().getDataSource(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Specifies the data source of the document.
+     * Example data source: `firebase.google.com`
+     * 
+ * + * string data_source = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for dataSource to set. + * @return This builder for chaining. + */ + public Builder setDataSourceBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + dataSource_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + private java.lang.Object title_ = ""; + + /** + * + * + *
+     * Output only. Provides the title of the document.
+     * 
+ * + * string title = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The title. + */ + public java.lang.String getTitle() { + java.lang.Object ref = title_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + title_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Output only. Provides the title of the document.
+     * 
+ * + * string title = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for title. + */ + public com.google.protobuf.ByteString getTitleBytes() { + java.lang.Object ref = title_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + title_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Output only. Provides the title of the document.
+     * 
+ * + * string title = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The title to set. + * @return This builder for chaining. + */ + public Builder setTitle(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + title_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Provides the title of the document.
+     * 
+ * + * string title = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearTitle() { + title_ = getDefaultInstance().getTitle(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Provides the title of the document.
+     * 
+ * + * string title = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for title to set. + * @return This builder for chaining. + */ + public Builder setTitleBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + title_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + private com.google.protobuf.Timestamp updateTime_; + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + updateTimeBuilder_; + + /** + * + * + *
+     * Output only. Represents the timestamp when the content or metadata of the
+     * document was last updated.
+     * 
+ * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + public boolean hasUpdateTime() { + return ((bitField0_ & 0x00000040) != 0); + } + + /** + * + * + *
+     * Output only. Represents the timestamp when the content or metadata of the
+     * document was last updated.
+     * 
+ * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + public com.google.protobuf.Timestamp getUpdateTime() { + if (updateTimeBuilder_ == null) { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; + } else { + return updateTimeBuilder_.getMessage(); + } + } + + /** + * + * + *
+     * Output only. Represents the timestamp when the content or metadata of the
+     * document was last updated.
+     * 
+ * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + updateTime_ = value; + } else { + updateTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Represents the timestamp when the content or metadata of the
+     * document was last updated.
+     * 
+ * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (updateTimeBuilder_ == null) { + updateTime_ = builderForValue.build(); + } else { + updateTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Represents the timestamp when the content or metadata of the
+     * document was last updated.
+     * 
+ * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { + if (updateTimeBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && updateTime_ != null + && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getUpdateTimeBuilder().mergeFrom(value); + } else { + updateTime_ = value; + } + } else { + updateTimeBuilder_.mergeFrom(value); + } + if (updateTime_ != null) { + bitField0_ |= 0x00000040; + onChanged(); + } + return this; + } + + /** + * + * + *
+     * Output only. Represents the timestamp when the content or metadata of the
+     * document was last updated.
+     * 
+ * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearUpdateTime() { + bitField0_ = (bitField0_ & ~0x00000040); + updateTime_ = null; + if (updateTimeBuilder_ != null) { + updateTimeBuilder_.dispose(); + updateTimeBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Represents the timestamp when the content or metadata of the
+     * document was last updated.
+     * 
+ * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { + bitField0_ |= 0x00000040; + onChanged(); + return internalGetUpdateTimeFieldBuilder().getBuilder(); + } + + /** + * + * + *
+     * Output only. Represents the timestamp when the content or metadata of the
+     * document was last updated.
+     * 
+ * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { + if (updateTimeBuilder_ != null) { + return updateTimeBuilder_.getMessageOrBuilder(); + } else { + return updateTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : updateTime_; + } + } + + /** + * + * + *
+     * Output only. Represents the timestamp when the content or metadata of the
+     * document was last updated.
+     * 
+ * + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + internalGetUpdateTimeFieldBuilder() { + if (updateTimeBuilder_ == null) { + updateTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getUpdateTime(), getParentForChildren(), isClean()); + updateTime_ = null; + } + return updateTimeBuilder_; + } + + private int view_ = 0; + + /** + * + * + *
+     * Output only. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The enum numeric value on the wire for view. + */ + @java.lang.Override + public int getViewValue() { + return view_; + } + + /** + * + * + *
+     * Output only. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The enum numeric value on the wire for view to set. + * @return This builder for chaining. + */ + public Builder setViewValue(int value) { + view_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The view. + */ + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentView getView() { + com.google.developers.knowledge.v1.DocumentView result = + com.google.developers.knowledge.v1.DocumentView.forNumber(view_); + return result == null ? com.google.developers.knowledge.v1.DocumentView.UNRECOGNIZED : result; + } + + /** + * + * + *
+     * Output only. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The view to set. + * @return This builder for chaining. + */ + public Builder setView(com.google.developers.knowledge.v1.DocumentView value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000080; + view_ = value.getNumber(); + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearView() { + bitField0_ = (bitField0_ & ~0x00000080); + view_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.developers.knowledge.v1.Document) + } + + // @@protoc_insertion_point(class_scope:google.developers.knowledge.v1.Document) + private static final com.google.developers.knowledge.v1.Document DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.developers.knowledge.v1.Document(); + } + + public static com.google.developers.knowledge.v1.Document getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Document 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.developers.knowledge.v1.Document getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentChunk.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentChunk.java new file mode 100644 index 000000000000..607cd10d55c6 --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentChunk.java @@ -0,0 +1,1499 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +/** + * + * + *
+ * A DocumentChunk represents a piece of content from a
+ * [Document][google.developers.knowledge.v1.Document] in the DeveloperKnowledge
+ * corpus. To fetch the entire document content, pass the `parent` to
+ * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+ * or
+ * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments].
+ * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.DocumentChunk} + */ +@com.google.protobuf.Generated +public final class DocumentChunk extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.developers.knowledge.v1.DocumentChunk) + DocumentChunkOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "DocumentChunk"); + } + + // Use DocumentChunk.newBuilder() to construct. + private DocumentChunk(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private DocumentChunk() { + parent_ = ""; + id_ = ""; + content_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_DocumentChunk_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_DocumentChunk_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.DocumentChunk.class, + com.google.developers.knowledge.v1.DocumentChunk.Builder.class); + } + + private int bitField0_; + public static final int PARENT_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object parent_ = ""; + + /** + * + * + *
+   * Output only. Contains the resource name of the document this chunk is from.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * string parent = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } + * + * + * @return The parent. + */ + @java.lang.Override + public java.lang.String getParent() { + java.lang.Object ref = parent_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + parent_ = s; + return s; + } + } + + /** + * + * + *
+   * Output only. Contains the resource name of the document this chunk is from.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * string parent = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for parent. + */ + @java.lang.Override + public com.google.protobuf.ByteString getParentBytes() { + java.lang.Object ref = parent_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + parent_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ID_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object id_ = ""; + + /** + * + * + *
+   * Output only. Specifies the ID of this chunk within the document. The chunk
+   * ID is unique within a document, but not globally unique across documents.
+   * The chunk ID is not stable and may change over time.
+   * 
+ * + * 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. Specifies the ID of this chunk within the document. The chunk
+   * ID is unique within a document, but not globally unique across documents.
+   * The chunk ID is not stable and may change over time.
+   * 
+ * + * 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 CONTENT_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object content_ = ""; + + /** + * + * + *
+   * Output only. Contains the content of the document chunk.
+   * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The content. + */ + @java.lang.Override + public java.lang.String getContent() { + java.lang.Object ref = content_; + 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(); + content_ = s; + return s; + } + } + + /** + * + * + *
+   * Output only. Contains the content of the document chunk.
+   * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for content. + */ + @java.lang.Override + public com.google.protobuf.ByteString getContentBytes() { + java.lang.Object ref = content_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + content_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DOCUMENT_FIELD_NUMBER = 4; + private com.google.developers.knowledge.v1.Document document_; + + /** + * + * + *
+   * Output only. Represents metadata about the
+   * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+   * [Document][google.developers.knowledge.v1.Document] message will be set to
+   * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+   * do not need to call
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * if they only need the metadata fields. Otherwise, clients should use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full document content.
+   * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the document field is set. + */ + @java.lang.Override + public boolean hasDocument() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
+   * Output only. Represents metadata about the
+   * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+   * [Document][google.developers.knowledge.v1.Document] message will be set to
+   * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+   * do not need to call
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * if they only need the metadata fields. Otherwise, clients should use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full document content.
+   * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The document. + */ + @java.lang.Override + public com.google.developers.knowledge.v1.Document getDocument() { + return document_ == null + ? com.google.developers.knowledge.v1.Document.getDefaultInstance() + : document_; + } + + /** + * + * + *
+   * Output only. Represents metadata about the
+   * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+   * [Document][google.developers.knowledge.v1.Document] message will be set to
+   * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+   * do not need to call
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * if they only need the metadata fields. Otherwise, clients should use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full document content.
+   * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentOrBuilder getDocumentOrBuilder() { + return document_ == null + ? com.google.developers.knowledge.v1.Document.getDefaultInstance() + : document_; + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(parent_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, parent_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(content_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, content_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(4, getDocument()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(parent_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, parent_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, id_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(content_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, content_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, getDocument()); + } + 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.developers.knowledge.v1.DocumentChunk)) { + return super.equals(obj); + } + com.google.developers.knowledge.v1.DocumentChunk other = + (com.google.developers.knowledge.v1.DocumentChunk) obj; + + if (!getParent().equals(other.getParent())) return false; + if (!getId().equals(other.getId())) return false; + if (!getContent().equals(other.getContent())) return false; + if (hasDocument() != other.hasDocument()) return false; + if (hasDocument()) { + if (!getDocument().equals(other.getDocument())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + PARENT_FIELD_NUMBER; + hash = (53 * hash) + getParent().hashCode(); + hash = (37 * hash) + ID_FIELD_NUMBER; + hash = (53 * hash) + getId().hashCode(); + hash = (37 * hash) + CONTENT_FIELD_NUMBER; + hash = (53 * hash) + getContent().hashCode(); + if (hasDocument()) { + hash = (37 * hash) + DOCUMENT_FIELD_NUMBER; + hash = (53 * hash) + getDocument().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.developers.knowledge.v1.DocumentChunk parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.DocumentChunk parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.DocumentChunk parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.DocumentChunk 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.developers.knowledge.v1.DocumentChunk parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.DocumentChunk parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.DocumentChunk parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.DocumentChunk parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.DocumentChunk parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.DocumentChunk parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.DocumentChunk parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.DocumentChunk parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.developers.knowledge.v1.DocumentChunk prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+   * A DocumentChunk represents a piece of content from a
+   * [Document][google.developers.knowledge.v1.Document] in the DeveloperKnowledge
+   * corpus. To fetch the entire document content, pass the `parent` to
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments].
+   * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.DocumentChunk} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.developers.knowledge.v1.DocumentChunk) + com.google.developers.knowledge.v1.DocumentChunkOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_DocumentChunk_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_DocumentChunk_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.DocumentChunk.class, + com.google.developers.knowledge.v1.DocumentChunk.Builder.class); + } + + // Construct using com.google.developers.knowledge.v1.DocumentChunk.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + internalGetDocumentFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + parent_ = ""; + id_ = ""; + content_ = ""; + document_ = null; + if (documentBuilder_ != null) { + documentBuilder_.dispose(); + documentBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_DocumentChunk_descriptor; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentChunk getDefaultInstanceForType() { + return com.google.developers.knowledge.v1.DocumentChunk.getDefaultInstance(); + } + + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentChunk build() { + com.google.developers.knowledge.v1.DocumentChunk result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentChunk buildPartial() { + com.google.developers.knowledge.v1.DocumentChunk result = + new com.google.developers.knowledge.v1.DocumentChunk(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.developers.knowledge.v1.DocumentChunk result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.parent_ = parent_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.id_ = id_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.content_ = content_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000008) != 0)) { + result.document_ = documentBuilder_ == null ? document_ : documentBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.developers.knowledge.v1.DocumentChunk) { + return mergeFrom((com.google.developers.knowledge.v1.DocumentChunk) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.developers.knowledge.v1.DocumentChunk other) { + if (other == com.google.developers.knowledge.v1.DocumentChunk.getDefaultInstance()) + return this; + if (!other.getParent().isEmpty()) { + parent_ = other.parent_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getId().isEmpty()) { + id_ = other.id_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getContent().isEmpty()) { + content_ = other.content_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.hasDocument()) { + mergeDocument(other.getDocument()); + } + 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: + { + parent_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + id_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + content_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: + { + input.readMessage( + internalGetDocumentFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000008; + break; + } // case 34 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object parent_ = ""; + + /** + * + * + *
+     * Output only. Contains the resource name of the document this chunk is from.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * string parent = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } + * + * + * @return The parent. + */ + public java.lang.String getParent() { + java.lang.Object ref = parent_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + parent_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Output only. Contains the resource name of the document this chunk is from.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * string parent = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for parent. + */ + public com.google.protobuf.ByteString getParentBytes() { + java.lang.Object ref = parent_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + parent_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Output only. Contains the resource name of the document this chunk is from.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * string parent = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } + * + * + * @param value The parent to set. + * @return This builder for chaining. + */ + public Builder setParent(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + parent_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Contains the resource name of the document this chunk is from.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * string parent = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearParent() { + parent_ = getDefaultInstance().getParent(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Contains the resource name of the document this chunk is from.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * string parent = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } + * + * + * @param value The bytes for parent to set. + * @return This builder for chaining. + */ + public Builder setParentBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + parent_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object id_ = ""; + + /** + * + * + *
+     * Output only. Specifies the ID of this chunk within the document. The chunk
+     * ID is unique within a document, but not globally unique across documents.
+     * The chunk ID is not stable and may change over time.
+     * 
+ * + * 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. Specifies the ID of this chunk within the document. The chunk
+     * ID is unique within a document, but not globally unique across documents.
+     * The chunk ID is not stable and may change over time.
+     * 
+ * + * 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. Specifies the ID of this chunk within the document. The chunk
+     * ID is unique within a document, but not globally unique across documents.
+     * The chunk ID is not stable and may change over time.
+     * 
+ * + * 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. Specifies the ID of this chunk within the document. The chunk
+     * ID is unique within a document, but not globally unique across documents.
+     * The chunk ID is not stable and may change over time.
+     * 
+ * + * 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. Specifies the ID of this chunk within the document. The chunk
+     * ID is unique within a document, but not globally unique across documents.
+     * The chunk ID is not stable and may change over time.
+     * 
+ * + * 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 java.lang.Object content_ = ""; + + /** + * + * + *
+     * Output only. Contains the content of the document chunk.
+     * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The content. + */ + public java.lang.String getContent() { + java.lang.Object ref = content_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + content_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Output only. Contains the content of the document chunk.
+     * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for content. + */ + public com.google.protobuf.ByteString getContentBytes() { + java.lang.Object ref = content_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + content_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Output only. Contains the content of the document chunk.
+     * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The content to set. + * @return This builder for chaining. + */ + public Builder setContent(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + content_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Contains the content of the document chunk.
+     * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return This builder for chaining. + */ + public Builder clearContent() { + content_ = getDefaultInstance().getContent(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Contains the content of the document chunk.
+     * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @param value The bytes for content to set. + * @return This builder for chaining. + */ + public Builder setContentBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + content_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private com.google.developers.knowledge.v1.Document document_; + private com.google.protobuf.SingleFieldBuilder< + com.google.developers.knowledge.v1.Document, + com.google.developers.knowledge.v1.Document.Builder, + com.google.developers.knowledge.v1.DocumentOrBuilder> + documentBuilder_; + + /** + * + * + *
+     * Output only. Represents metadata about the
+     * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+     * [Document][google.developers.knowledge.v1.Document] message will be set to
+     * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+     * do not need to call
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * if they only need the metadata fields. Otherwise, clients should use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to fetch the full document content.
+     * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the document field is set. + */ + public boolean hasDocument() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
+     * Output only. Represents metadata about the
+     * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+     * [Document][google.developers.knowledge.v1.Document] message will be set to
+     * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+     * do not need to call
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * if they only need the metadata fields. Otherwise, clients should use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to fetch the full document content.
+     * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The document. + */ + public com.google.developers.knowledge.v1.Document getDocument() { + if (documentBuilder_ == null) { + return document_ == null + ? com.google.developers.knowledge.v1.Document.getDefaultInstance() + : document_; + } else { + return documentBuilder_.getMessage(); + } + } + + /** + * + * + *
+     * Output only. Represents metadata about the
+     * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+     * [Document][google.developers.knowledge.v1.Document] message will be set to
+     * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+     * do not need to call
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * if they only need the metadata fields. Otherwise, clients should use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to fetch the full document content.
+     * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setDocument(com.google.developers.knowledge.v1.Document value) { + if (documentBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + document_ = value; + } else { + documentBuilder_.setMessage(value); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Represents metadata about the
+     * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+     * [Document][google.developers.knowledge.v1.Document] message will be set to
+     * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+     * do not need to call
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * if they only need the metadata fields. Otherwise, clients should use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to fetch the full document content.
+     * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder setDocument( + com.google.developers.knowledge.v1.Document.Builder builderForValue) { + if (documentBuilder_ == null) { + document_ = builderForValue.build(); + } else { + documentBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Represents metadata about the
+     * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+     * [Document][google.developers.knowledge.v1.Document] message will be set to
+     * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+     * do not need to call
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * if they only need the metadata fields. Otherwise, clients should use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to fetch the full document content.
+     * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder mergeDocument(com.google.developers.knowledge.v1.Document value) { + if (documentBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0) + && document_ != null + && document_ != com.google.developers.knowledge.v1.Document.getDefaultInstance()) { + getDocumentBuilder().mergeFrom(value); + } else { + document_ = value; + } + } else { + documentBuilder_.mergeFrom(value); + } + if (document_ != null) { + bitField0_ |= 0x00000008; + onChanged(); + } + return this; + } + + /** + * + * + *
+     * Output only. Represents metadata about the
+     * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+     * [Document][google.developers.knowledge.v1.Document] message will be set to
+     * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+     * do not need to call
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * if they only need the metadata fields. Otherwise, clients should use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to fetch the full document content.
+     * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public Builder clearDocument() { + bitField0_ = (bitField0_ & ~0x00000008); + document_ = null; + if (documentBuilder_ != null) { + documentBuilder_.dispose(); + documentBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. Represents metadata about the
+     * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+     * [Document][google.developers.knowledge.v1.Document] message will be set to
+     * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+     * do not need to call
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * if they only need the metadata fields. Otherwise, clients should use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to fetch the full document content.
+     * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.developers.knowledge.v1.Document.Builder getDocumentBuilder() { + bitField0_ |= 0x00000008; + onChanged(); + return internalGetDocumentFieldBuilder().getBuilder(); + } + + /** + * + * + *
+     * Output only. Represents metadata about the
+     * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+     * [Document][google.developers.knowledge.v1.Document] message will be set to
+     * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+     * do not need to call
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * if they only need the metadata fields. Otherwise, clients should use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to fetch the full document content.
+     * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + public com.google.developers.knowledge.v1.DocumentOrBuilder getDocumentOrBuilder() { + if (documentBuilder_ != null) { + return documentBuilder_.getMessageOrBuilder(); + } else { + return document_ == null + ? com.google.developers.knowledge.v1.Document.getDefaultInstance() + : document_; + } + } + + /** + * + * + *
+     * Output only. Represents metadata about the
+     * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+     * [Document][google.developers.knowledge.v1.Document] message will be set to
+     * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+     * do not need to call
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * if they only need the metadata fields. Otherwise, clients should use
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to fetch the full document content.
+     * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.developers.knowledge.v1.Document, + com.google.developers.knowledge.v1.Document.Builder, + com.google.developers.knowledge.v1.DocumentOrBuilder> + internalGetDocumentFieldBuilder() { + if (documentBuilder_ == null) { + documentBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.developers.knowledge.v1.Document, + com.google.developers.knowledge.v1.Document.Builder, + com.google.developers.knowledge.v1.DocumentOrBuilder>( + getDocument(), getParentForChildren(), isClean()); + document_ = null; + } + return documentBuilder_; + } + + // @@protoc_insertion_point(builder_scope:google.developers.knowledge.v1.DocumentChunk) + } + + // @@protoc_insertion_point(class_scope:google.developers.knowledge.v1.DocumentChunk) + private static final com.google.developers.knowledge.v1.DocumentChunk DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.developers.knowledge.v1.DocumentChunk(); + } + + public static com.google.developers.knowledge.v1.DocumentChunk getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public DocumentChunk 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.developers.knowledge.v1.DocumentChunk getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentChunkOrBuilder.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentChunkOrBuilder.java new file mode 100644 index 000000000000..6bf8b4244b86 --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentChunkOrBuilder.java @@ -0,0 +1,200 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +@com.google.protobuf.Generated +public interface DocumentChunkOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.developers.knowledge.v1.DocumentChunk) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Output only. Contains the resource name of the document this chunk is from.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * string parent = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } + * + * + * @return The parent. + */ + java.lang.String getParent(); + + /** + * + * + *
+   * Output only. Contains the resource name of the document this chunk is from.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * string parent = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for parent. + */ + com.google.protobuf.ByteString getParentBytes(); + + /** + * + * + *
+   * Output only. Specifies the ID of this chunk within the document. The chunk
+   * ID is unique within a document, but not globally unique across documents.
+   * The chunk ID is not stable and may change over time.
+   * 
+ * + * string id = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The id. + */ + java.lang.String getId(); + + /** + * + * + *
+   * Output only. Specifies the ID of this chunk within the document. The chunk
+   * ID is unique within a document, but not globally unique across documents.
+   * The chunk ID is not stable and may change over time.
+   * 
+ * + * string id = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for id. + */ + com.google.protobuf.ByteString getIdBytes(); + + /** + * + * + *
+   * Output only. Contains the content of the document chunk.
+   * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The content. + */ + java.lang.String getContent(); + + /** + * + * + *
+   * Output only. Contains the content of the document chunk.
+   * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for content. + */ + com.google.protobuf.ByteString getContentBytes(); + + /** + * + * + *
+   * Output only. Represents metadata about the
+   * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+   * [Document][google.developers.knowledge.v1.Document] message will be set to
+   * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+   * do not need to call
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * if they only need the metadata fields. Otherwise, clients should use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full document content.
+   * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the document field is set. + */ + boolean hasDocument(); + + /** + * + * + *
+   * Output only. Represents metadata about the
+   * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+   * [Document][google.developers.knowledge.v1.Document] message will be set to
+   * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+   * do not need to call
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * if they only need the metadata fields. Otherwise, clients should use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full document content.
+   * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The document. + */ + com.google.developers.knowledge.v1.Document getDocument(); + + /** + * + * + *
+   * Output only. Represents metadata about the
+   * [Document][google.developers.knowledge.v1.Document] this chunk is from. The
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of this
+   * [Document][google.developers.knowledge.v1.Document] message will be set to
+   * `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
+   * do not need to call
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * if they only need the metadata fields. Otherwise, clients should use
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to fetch the full document content.
+   * 
+ * + * + * .google.developers.knowledge.v1.Document document = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.developers.knowledge.v1.DocumentOrBuilder getDocumentOrBuilder(); +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentName.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentName.java new file mode 100644 index 000000000000..3c485c8740ee --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentName.java @@ -0,0 +1,168 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.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 DocumentName implements ResourceName { + private static final PathTemplate DOCUMENT = + PathTemplate.createWithoutUrlEncoding("documents/{document}"); + private volatile Map fieldValuesMap; + private final String document; + + @Deprecated + protected DocumentName() { + document = null; + } + + private DocumentName(Builder builder) { + document = Preconditions.checkNotNull(builder.getDocument()); + } + + public String getDocument() { + return document; + } + + public static Builder newBuilder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder(this); + } + + public static DocumentName of(String document) { + return newBuilder().setDocument(document).build(); + } + + public static String format(String document) { + return newBuilder().setDocument(document).build().toString(); + } + + public static DocumentName parse(String formattedString) { + if (formattedString.isEmpty()) { + return null; + } + Map matchMap = + DOCUMENT.validatedMatch( + formattedString, "DocumentName.parse: formattedString not in valid format"); + return of(matchMap.get("document")); + } + + 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 (DocumentName value : values) { + if (value == null) { + list.add(""); + } else { + list.add(value.toString()); + } + } + return list; + } + + public static boolean isParsableFrom(String formattedString) { + return DOCUMENT.matches(formattedString); + } + + @Override + public Map getFieldValuesMap() { + if (fieldValuesMap == null) { + synchronized (this) { + if (fieldValuesMap == null) { + ImmutableMap.Builder fieldMapBuilder = ImmutableMap.builder(); + if (document != null) { + fieldMapBuilder.put("document", document); + } + fieldValuesMap = fieldMapBuilder.build(); + } + } + } + return fieldValuesMap; + } + + public String getFieldValue(String fieldName) { + return getFieldValuesMap().get(fieldName); + } + + @Override + public String toString() { + return DOCUMENT.instantiate("document", document); + } + + @Override + public boolean equals(Object o) { + if (o == this) { + return true; + } + if (o != null && getClass() == o.getClass()) { + DocumentName that = ((DocumentName) o); + return Objects.equals(this.document, that.document); + } + return false; + } + + @Override + public int hashCode() { + int h = 1; + h *= 1000003; + h ^= Objects.hashCode(document); + return h; + } + + /** Builder for documents/{document}. */ + public static class Builder { + private String document; + + protected Builder() {} + + public String getDocument() { + return document; + } + + public Builder setDocument(String document) { + this.document = document; + return this; + } + + private Builder(DocumentName documentName) { + this.document = documentName.document; + } + + public DocumentName build() { + return new DocumentName(this); + } + } +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentOrBuilder.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentOrBuilder.java new file mode 100644 index 000000000000..ffd685e2977b --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentOrBuilder.java @@ -0,0 +1,269 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +@com.google.protobuf.Generated +public interface DocumentOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.developers.knowledge.v1.Document) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Identifier. Contains the resource name of the document.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * + * @return The name. + */ + java.lang.String getName(); + + /** + * + * + *
+   * Identifier. Contains the resource name of the document.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * + * @return The bytes for name. + */ + com.google.protobuf.ByteString getNameBytes(); + + /** + * + * + *
+   * Output only. Provides the URI of the content, such as
+   * `docs.cloud.google.com/storage/docs/creating-buckets`.
+   * 
+ * + * string uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The uri. + */ + java.lang.String getUri(); + + /** + * + * + *
+   * Output only. Provides the URI of the content, such as
+   * `docs.cloud.google.com/storage/docs/creating-buckets`.
+   * 
+ * + * string uri = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for uri. + */ + com.google.protobuf.ByteString getUriBytes(); + + /** + * + * + *
+   * Output only. Contains the full content of the document in Markdown format.
+   * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The content. + */ + java.lang.String getContent(); + + /** + * + * + *
+   * Output only. Contains the full content of the document in Markdown format.
+   * 
+ * + * string content = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for content. + */ + com.google.protobuf.ByteString getContentBytes(); + + /** + * + * + *
+   * Output only. Provides a description of the document.
+   * 
+ * + * string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The description. + */ + java.lang.String getDescription(); + + /** + * + * + *
+   * Output only. Provides a description of the document.
+   * 
+ * + * string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for description. + */ + com.google.protobuf.ByteString getDescriptionBytes(); + + /** + * + * + *
+   * Output only. Specifies the data source of the document.
+   * Example data source: `firebase.google.com`
+   * 
+ * + * string data_source = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The dataSource. + */ + java.lang.String getDataSource(); + + /** + * + * + *
+   * Output only. Specifies the data source of the document.
+   * Example data source: `firebase.google.com`
+   * 
+ * + * string data_source = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for dataSource. + */ + com.google.protobuf.ByteString getDataSourceBytes(); + + /** + * + * + *
+   * Output only. Provides the title of the document.
+   * 
+ * + * string title = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The title. + */ + java.lang.String getTitle(); + + /** + * + * + *
+   * Output only. Provides the title of the document.
+   * 
+ * + * string title = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * @return The bytes for title. + */ + com.google.protobuf.ByteString getTitleBytes(); + + /** + * + * + *
+   * Output only. Represents the timestamp when the content or metadata of the
+   * document was last updated.
+   * 
+ * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return Whether the updateTime field is set. + */ + boolean hasUpdateTime(); + + /** + * + * + *
+   * Output only. Represents the timestamp when the content or metadata of the
+   * document was last updated.
+   * 
+ * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The updateTime. + */ + com.google.protobuf.Timestamp getUpdateTime(); + + /** + * + * + *
+   * Output only. Represents the timestamp when the content or metadata of the
+   * document was last updated.
+   * 
+ * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + */ + com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder(); + + /** + * + * + *
+   * Output only. Specifies the
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The enum numeric value on the wire for view. + */ + int getViewValue(); + + /** + * + * + *
+   * Output only. Specifies the
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The view. + */ + com.google.developers.knowledge.v1.DocumentView getView(); +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentView.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentView.java new file mode 100644 index 000000000000..154af3825c08 --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/DocumentView.java @@ -0,0 +1,251 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +/** + * + * + *
+ * Specifies which fields of the
+ * [Document][google.developers.knowledge.v1.Document] are included.
+ * 
+ * + * Protobuf enum {@code google.developers.knowledge.v1.DocumentView} + */ +@com.google.protobuf.Generated +public enum DocumentView implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
+   * The default / unset value. See each API method for its default value if
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] is not
+   * specified.
+   * 
+ * + * DOCUMENT_VIEW_UNSPECIFIED = 0; + */ + DOCUMENT_VIEW_UNSPECIFIED(0), + /** + * + * + *
+   * Includes only the basic metadata fields:
+   * - `name`
+   * - `uri`
+   * - `data_source`
+   * - `title`
+   * - `description`
+   * - `update_time`
+   * - `view`
+   *
+   * This is the default of view for
+   * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks].
+   * 
+ * + * DOCUMENT_VIEW_BASIC = 1; + */ + DOCUMENT_VIEW_BASIC(1), + /** + * + * + *
+   * Includes all [Document][google.developers.knowledge.v1.Document] fields.
+   * 
+ * + * DOCUMENT_VIEW_FULL = 2; + */ + DOCUMENT_VIEW_FULL(2), + /** + * + * + *
+   * Includes the `DOCUMENT_VIEW_BASIC` fields and the `content` field.
+   *
+   * This is the default of view for
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * and
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments].
+   * 
+ * + * DOCUMENT_VIEW_CONTENT = 3; + */ + DOCUMENT_VIEW_CONTENT(3), + UNRECOGNIZED(-1), + ; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "DocumentView"); + } + + /** + * + * + *
+   * The default / unset value. See each API method for its default value if
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] is not
+   * specified.
+   * 
+ * + * DOCUMENT_VIEW_UNSPECIFIED = 0; + */ + public static final int DOCUMENT_VIEW_UNSPECIFIED_VALUE = 0; + + /** + * + * + *
+   * Includes only the basic metadata fields:
+   * - `name`
+   * - `uri`
+   * - `data_source`
+   * - `title`
+   * - `description`
+   * - `update_time`
+   * - `view`
+   *
+   * This is the default of view for
+   * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks].
+   * 
+ * + * DOCUMENT_VIEW_BASIC = 1; + */ + public static final int DOCUMENT_VIEW_BASIC_VALUE = 1; + + /** + * + * + *
+   * Includes all [Document][google.developers.knowledge.v1.Document] fields.
+   * 
+ * + * DOCUMENT_VIEW_FULL = 2; + */ + public static final int DOCUMENT_VIEW_FULL_VALUE = 2; + + /** + * + * + *
+   * Includes the `DOCUMENT_VIEW_BASIC` fields and the `content` field.
+   *
+   * This is the default of view for
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * and
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments].
+   * 
+ * + * DOCUMENT_VIEW_CONTENT = 3; + */ + public static final int DOCUMENT_VIEW_CONTENT_VALUE = 3; + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static DocumentView 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 DocumentView forNumber(int value) { + switch (value) { + case 0: + return DOCUMENT_VIEW_UNSPECIFIED; + case 1: + return DOCUMENT_VIEW_BASIC; + case 2: + return DOCUMENT_VIEW_FULL; + case 3: + return DOCUMENT_VIEW_CONTENT; + 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 DocumentView findValueByNumber(int number) { + return DocumentView.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); + } + + public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto.getDescriptor() + .getEnumTypes() + .get(0); + } + + private static final DocumentView[] VALUES = values(); + + public static DocumentView 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 DocumentView(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.developers.knowledge.v1.DocumentView) +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/GetDocumentRequest.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/GetDocumentRequest.java new file mode 100644 index 000000000000..e5451311492f --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/GetDocumentRequest.java @@ -0,0 +1,826 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +/** + * + * + *
+ * Request message for
+ * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument].
+ * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.GetDocumentRequest} + */ +@com.google.protobuf.Generated +public final class GetDocumentRequest extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.developers.knowledge.v1.GetDocumentRequest) + GetDocumentRequestOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "GetDocumentRequest"); + } + + // Use GetDocumentRequest.newBuilder() to construct. + private GetDocumentRequest(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private GetDocumentRequest() { + name_ = ""; + view_ = 0; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_GetDocumentRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_GetDocumentRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.GetDocumentRequest.class, + com.google.developers.knowledge.v1.GetDocumentRequest.Builder.class); + } + + public static final int NAME_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; + + /** + * + * + *
+   * Required. Specifies the name of the document to retrieve.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * 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. Specifies the name of the document to retrieve.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * 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 VIEW_FIELD_NUMBER = 2; + private int view_ = 0; + + /** + * + * + *
+   * Optional. Specifies the
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document. If unspecified,
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * defaults to `DOCUMENT_VIEW_CONTENT`.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for view. + */ + @java.lang.Override + public int getViewValue() { + return view_; + } + + /** + * + * + *
+   * Optional. Specifies the
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document. If unspecified,
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * defaults to `DOCUMENT_VIEW_CONTENT`.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The view. + */ + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentView getView() { + com.google.developers.knowledge.v1.DocumentView result = + com.google.developers.knowledge.v1.DocumentView.forNumber(view_); + return result == null ? com.google.developers.knowledge.v1.DocumentView.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.GeneratedMessage.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, name_); + } + if (view_ + != com.google.developers.knowledge.v1.DocumentView.DOCUMENT_VIEW_UNSPECIFIED.getNumber()) { + output.writeEnum(2, view_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); + } + if (view_ + != com.google.developers.knowledge.v1.DocumentView.DOCUMENT_VIEW_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(2, view_); + } + 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.developers.knowledge.v1.GetDocumentRequest)) { + return super.equals(obj); + } + com.google.developers.knowledge.v1.GetDocumentRequest other = + (com.google.developers.knowledge.v1.GetDocumentRequest) obj; + + if (!getName().equals(other.getName())) return false; + if (view_ != other.view_) 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) + VIEW_FIELD_NUMBER; + hash = (53 * hash) + view_; + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest 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.developers.knowledge.v1.GetDocumentRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.developers.knowledge.v1.GetDocumentRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+   * Request message for
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument].
+   * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.GetDocumentRequest} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.developers.knowledge.v1.GetDocumentRequest) + com.google.developers.knowledge.v1.GetDocumentRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_GetDocumentRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_GetDocumentRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.GetDocumentRequest.class, + com.google.developers.knowledge.v1.GetDocumentRequest.Builder.class); + } + + // Construct using com.google.developers.knowledge.v1.GetDocumentRequest.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + name_ = ""; + view_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_GetDocumentRequest_descriptor; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.GetDocumentRequest getDefaultInstanceForType() { + return com.google.developers.knowledge.v1.GetDocumentRequest.getDefaultInstance(); + } + + @java.lang.Override + public com.google.developers.knowledge.v1.GetDocumentRequest build() { + com.google.developers.knowledge.v1.GetDocumentRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.GetDocumentRequest buildPartial() { + com.google.developers.knowledge.v1.GetDocumentRequest result = + new com.google.developers.knowledge.v1.GetDocumentRequest(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.developers.knowledge.v1.GetDocumentRequest result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.view_ = view_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.developers.knowledge.v1.GetDocumentRequest) { + return mergeFrom((com.google.developers.knowledge.v1.GetDocumentRequest) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.developers.knowledge.v1.GetDocumentRequest other) { + if (other == com.google.developers.knowledge.v1.GetDocumentRequest.getDefaultInstance()) + return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.view_ != 0) { + setViewValue(other.getViewValue()); + } + 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: + { + view_ = input.readEnum(); + bitField0_ |= 0x00000002; + break; + } // case 16 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object name_ = ""; + + /** + * + * + *
+     * Required. Specifies the name of the document to retrieve.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * 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. Specifies the name of the document to retrieve.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * 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. Specifies the name of the document to retrieve.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * 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. Specifies the name of the document to retrieve.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * 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. Specifies the name of the document to retrieve.
+     * Format: `documents/{uri_without_scheme}`
+     * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+     * 
+ * + * + * 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 view_ = 0; + + /** + * + * + *
+     * Optional. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document. If unspecified,
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * defaults to `DOCUMENT_VIEW_CONTENT`.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for view. + */ + @java.lang.Override + public int getViewValue() { + return view_; + } + + /** + * + * + *
+     * Optional. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document. If unspecified,
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * defaults to `DOCUMENT_VIEW_CONTENT`.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The enum numeric value on the wire for view to set. + * @return This builder for chaining. + */ + public Builder setViewValue(int value) { + view_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document. If unspecified,
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * defaults to `DOCUMENT_VIEW_CONTENT`.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The view. + */ + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentView getView() { + com.google.developers.knowledge.v1.DocumentView result = + com.google.developers.knowledge.v1.DocumentView.forNumber(view_); + return result == null ? com.google.developers.knowledge.v1.DocumentView.UNRECOGNIZED : result; + } + + /** + * + * + *
+     * Optional. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document. If unspecified,
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * defaults to `DOCUMENT_VIEW_CONTENT`.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The view to set. + * @return This builder for chaining. + */ + public Builder setView(com.google.developers.knowledge.v1.DocumentView value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000002; + view_ = value.getNumber(); + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Specifies the
+     * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+     * document. If unspecified,
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * defaults to `DOCUMENT_VIEW_CONTENT`.
+     * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearView() { + bitField0_ = (bitField0_ & ~0x00000002); + view_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.developers.knowledge.v1.GetDocumentRequest) + } + + // @@protoc_insertion_point(class_scope:google.developers.knowledge.v1.GetDocumentRequest) + private static final com.google.developers.knowledge.v1.GetDocumentRequest DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.developers.knowledge.v1.GetDocumentRequest(); + } + + public static com.google.developers.knowledge.v1.GetDocumentRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GetDocumentRequest 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.developers.knowledge.v1.GetDocumentRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/GetDocumentRequestOrBuilder.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/GetDocumentRequestOrBuilder.java new file mode 100644 index 000000000000..d5762aac5b3d --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/GetDocumentRequestOrBuilder.java @@ -0,0 +1,100 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +@com.google.protobuf.Generated +public interface GetDocumentRequestOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.developers.knowledge.v1.GetDocumentRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Required. Specifies the name of the document to retrieve.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * + * + * @return The name. + */ + java.lang.String getName(); + + /** + * + * + *
+   * Required. Specifies the name of the document to retrieve.
+   * Format: `documents/{uri_without_scheme}`
+   * Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`
+   * 
+ * + * + * 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
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document. If unspecified,
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * defaults to `DOCUMENT_VIEW_CONTENT`.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The enum numeric value on the wire for view. + */ + int getViewValue(); + + /** + * + * + *
+   * Optional. Specifies the
+   * [DocumentView][google.developers.knowledge.v1.DocumentView] of the
+   * document. If unspecified,
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * defaults to `DOCUMENT_VIEW_CONTENT`.
+   * 
+ * + * + * .google.developers.knowledge.v1.DocumentView view = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The view. + */ + com.google.developers.knowledge.v1.DocumentView getView(); +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksRequest.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksRequest.java new file mode 100644 index 000000000000..296285c000b3 --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksRequest.java @@ -0,0 +1,1405 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +/** + * + * + *
+ * Request message for
+ * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks].
+ * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.SearchDocumentChunksRequest} + */ +@com.google.protobuf.Generated +public final class SearchDocumentChunksRequest extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.developers.knowledge.v1.SearchDocumentChunksRequest) + SearchDocumentChunksRequestOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "SearchDocumentChunksRequest"); + } + + // Use SearchDocumentChunksRequest.newBuilder() to construct. + private SearchDocumentChunksRequest(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private SearchDocumentChunksRequest() { + query_ = ""; + pageToken_ = ""; + filter_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_SearchDocumentChunksRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_SearchDocumentChunksRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.SearchDocumentChunksRequest.class, + com.google.developers.knowledge.v1.SearchDocumentChunksRequest.Builder.class); + } + + public static final int QUERY_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object query_ = ""; + + /** + * + * + *
+   * Required. Provides the raw query string provided by the user, such as "How
+   * to create a Cloud Storage bucket?".
+   * 
+ * + * string query = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The query. + */ + @java.lang.Override + public java.lang.String getQuery() { + java.lang.Object ref = query_; + 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(); + query_ = s; + return s; + } + } + + /** + * + * + *
+   * Required. Provides the raw query string provided by the user, such as "How
+   * to create a Cloud Storage bucket?".
+   * 
+ * + * string query = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for query. + */ + @java.lang.Override + public com.google.protobuf.ByteString getQueryBytes() { + java.lang.Object ref = query_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + query_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PAGE_SIZE_FIELD_NUMBER = 2; + private int pageSize_ = 0; + + /** + * + * + *
+   * Optional. Specifies the maximum number of results to return. The service
+   * may return fewer than this value.
+   *
+   * If unspecified, at most 5 results will be returned.
+   *
+   * The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT
+   * error.
+   * 
+ * + * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The pageSize. + */ + @java.lang.Override + public int getPageSize() { + return pageSize_; + } + + public static final int PAGE_TOKEN_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object pageToken_ = ""; + + /** + * + * + *
+   * Optional. Contains a page token, received from a previous
+   * `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.
+   * 
+ * + * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The pageToken. + */ + @java.lang.Override + public java.lang.String getPageToken() { + java.lang.Object ref = pageToken_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + pageToken_ = s; + return s; + } + } + + /** + * + * + *
+   * Optional. Contains a page token, received from a previous
+   * `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.
+   * 
+ * + * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for pageToken. + */ + @java.lang.Override + public com.google.protobuf.ByteString getPageTokenBytes() { + java.lang.Object ref = pageToken_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + pageToken_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int FILTER_FIELD_NUMBER = 4; + + @SuppressWarnings("serial") + private volatile java.lang.Object filter_ = ""; + + /** + * + * + *
+   * Optional. Applies a strict filter to the search results. The expression
+   * supports a subset of the syntax described at https://google.aip.dev/160.
+   *
+   * While `SearchDocumentChunks` returns
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s, the filter
+   * is applied to `DocumentChunk.document` fields.
+   *
+   * Supported fields for filtering:
+   *
+   * * `data_source` (STRING): The source of the document, e.g.
+   * `docs.cloud.google.com`. See
+   * https://developers.google.com/knowledge/reference/corpus-reference for
+   * the complete list of data sources in the corpus.
+   * * `update_time` (TIMESTAMP): The timestamp of when the document was last
+   * meaningfully updated. A meaningful update is one that changes document's
+   * markdown content or metadata.
+   * * `uri` (STRING): The document URI, e.g.
+   * `https://docs.cloud.google.com/bigquery/docs/tables`.
+   *
+   * STRING fields support `=` (equals) and `!=` (not equals) operators for
+   * **exact match** on the whole string. Partial match, prefix match, and
+   * regexp match are not supported.
+   *
+   * TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators.
+   * Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`.
+   *
+   * You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical
+   * operators. `OR` has higher precedence than `AND`. Use parentheses for
+   * explicit precedence grouping.
+   *
+   * Examples:
+   *
+   * * `data_source = "docs.cloud.google.com" OR data_source =
+   * "firebase.google.com"`
+   * * `data_source != "firebase.google.com"`
+   * * `update_time < "2024-01-01T00:00:00Z"`
+   * * `update_time >= "2025-01-22T00:00:00Z" AND (data_source =
+   * "developer.chrome.com" OR data_source = "web.dev")`
+   * * `uri = "https://docs.cloud.google.com/release-notes"`
+   *
+   * The `filter` string must not exceed 500 characters; values longer than 500
+   * characters will result in an `INVALID_ARGUMENT` error.
+   * 
+ * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + @java.lang.Override + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + filter_ = s; + return s; + } + } + + /** + * + * + *
+   * Optional. Applies a strict filter to the search results. The expression
+   * supports a subset of the syntax described at https://google.aip.dev/160.
+   *
+   * While `SearchDocumentChunks` returns
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s, the filter
+   * is applied to `DocumentChunk.document` fields.
+   *
+   * Supported fields for filtering:
+   *
+   * * `data_source` (STRING): The source of the document, e.g.
+   * `docs.cloud.google.com`. See
+   * https://developers.google.com/knowledge/reference/corpus-reference for
+   * the complete list of data sources in the corpus.
+   * * `update_time` (TIMESTAMP): The timestamp of when the document was last
+   * meaningfully updated. A meaningful update is one that changes document's
+   * markdown content or metadata.
+   * * `uri` (STRING): The document URI, e.g.
+   * `https://docs.cloud.google.com/bigquery/docs/tables`.
+   *
+   * STRING fields support `=` (equals) and `!=` (not equals) operators for
+   * **exact match** on the whole string. Partial match, prefix match, and
+   * regexp match are not supported.
+   *
+   * TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators.
+   * Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`.
+   *
+   * You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical
+   * operators. `OR` has higher precedence than `AND`. Use parentheses for
+   * explicit precedence grouping.
+   *
+   * Examples:
+   *
+   * * `data_source = "docs.cloud.google.com" OR data_source =
+   * "firebase.google.com"`
+   * * `data_source != "firebase.google.com"`
+   * * `update_time < "2024-01-01T00:00:00Z"`
+   * * `update_time >= "2025-01-22T00:00:00Z" AND (data_source =
+   * "developer.chrome.com" OR data_source = "web.dev")`
+   * * `uri = "https://docs.cloud.google.com/release-notes"`
+   *
+   * The `filter` string must not exceed 500 characters; values longer than 500
+   * characters will result in an `INVALID_ARGUMENT` error.
+   * 
+ * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + @java.lang.Override + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(query_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, query_); + } + if (pageSize_ != 0) { + output.writeInt32(2, pageSize_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, pageToken_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, filter_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(query_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, query_); + } + if (pageSize_ != 0) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, pageSize_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, pageToken_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(4, filter_); + } + 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.developers.knowledge.v1.SearchDocumentChunksRequest)) { + return super.equals(obj); + } + com.google.developers.knowledge.v1.SearchDocumentChunksRequest other = + (com.google.developers.knowledge.v1.SearchDocumentChunksRequest) obj; + + if (!getQuery().equals(other.getQuery())) return false; + if (getPageSize() != other.getPageSize()) return false; + if (!getPageToken().equals(other.getPageToken())) return false; + if (!getFilter().equals(other.getFilter())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + QUERY_FIELD_NUMBER; + hash = (53 * hash) + getQuery().hashCode(); + hash = (37 * hash) + PAGE_SIZE_FIELD_NUMBER; + hash = (53 * hash) + getPageSize(); + hash = (37 * hash) + PAGE_TOKEN_FIELD_NUMBER; + hash = (53 * hash) + getPageToken().hashCode(); + hash = (37 * hash) + FILTER_FIELD_NUMBER; + hash = (53 * hash) + getFilter().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest 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.developers.knowledge.v1.SearchDocumentChunksRequest parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.developers.knowledge.v1.SearchDocumentChunksRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+   * Request message for
+   * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks].
+   * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.SearchDocumentChunksRequest} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.developers.knowledge.v1.SearchDocumentChunksRequest) + com.google.developers.knowledge.v1.SearchDocumentChunksRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_SearchDocumentChunksRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_SearchDocumentChunksRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.SearchDocumentChunksRequest.class, + com.google.developers.knowledge.v1.SearchDocumentChunksRequest.Builder.class); + } + + // Construct using com.google.developers.knowledge.v1.SearchDocumentChunksRequest.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + query_ = ""; + pageSize_ = 0; + pageToken_ = ""; + filter_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_SearchDocumentChunksRequest_descriptor; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.SearchDocumentChunksRequest + getDefaultInstanceForType() { + return com.google.developers.knowledge.v1.SearchDocumentChunksRequest.getDefaultInstance(); + } + + @java.lang.Override + public com.google.developers.knowledge.v1.SearchDocumentChunksRequest build() { + com.google.developers.knowledge.v1.SearchDocumentChunksRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.SearchDocumentChunksRequest buildPartial() { + com.google.developers.knowledge.v1.SearchDocumentChunksRequest result = + new com.google.developers.knowledge.v1.SearchDocumentChunksRequest(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.developers.knowledge.v1.SearchDocumentChunksRequest result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.query_ = query_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.pageSize_ = pageSize_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.pageToken_ = pageToken_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.filter_ = filter_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.developers.knowledge.v1.SearchDocumentChunksRequest) { + return mergeFrom((com.google.developers.knowledge.v1.SearchDocumentChunksRequest) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.developers.knowledge.v1.SearchDocumentChunksRequest other) { + if (other + == com.google.developers.knowledge.v1.SearchDocumentChunksRequest.getDefaultInstance()) + return this; + if (!other.getQuery().isEmpty()) { + query_ = other.query_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getPageSize() != 0) { + setPageSize(other.getPageSize()); + } + if (!other.getPageToken().isEmpty()) { + pageToken_ = other.pageToken_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (!other.getFilter().isEmpty()) { + filter_ = other.filter_; + bitField0_ |= 0x00000008; + 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: + { + query_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 16: + { + pageSize_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 26: + { + pageToken_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: + { + filter_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object query_ = ""; + + /** + * + * + *
+     * Required. Provides the raw query string provided by the user, such as "How
+     * to create a Cloud Storage bucket?".
+     * 
+ * + * string query = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The query. + */ + public java.lang.String getQuery() { + java.lang.Object ref = query_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + query_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Required. Provides the raw query string provided by the user, such as "How
+     * to create a Cloud Storage bucket?".
+     * 
+ * + * string query = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for query. + */ + public com.google.protobuf.ByteString getQueryBytes() { + java.lang.Object ref = query_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + query_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Required. Provides the raw query string provided by the user, such as "How
+     * to create a Cloud Storage bucket?".
+     * 
+ * + * string query = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The query to set. + * @return This builder for chaining. + */ + public Builder setQuery(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + query_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+     * Required. Provides the raw query string provided by the user, such as "How
+     * to create a Cloud Storage bucket?".
+     * 
+ * + * string query = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearQuery() { + query_ = getDefaultInstance().getQuery(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
+     * Required. Provides the raw query string provided by the user, such as "How
+     * to create a Cloud Storage bucket?".
+     * 
+ * + * string query = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for query to set. + * @return This builder for chaining. + */ + public Builder setQueryBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + query_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private int pageSize_; + + /** + * + * + *
+     * Optional. Specifies the maximum number of results to return. The service
+     * may return fewer than this value.
+     *
+     * If unspecified, at most 5 results will be returned.
+     *
+     * The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT
+     * error.
+     * 
+ * + * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The pageSize. + */ + @java.lang.Override + public int getPageSize() { + return pageSize_; + } + + /** + * + * + *
+     * Optional. Specifies the maximum number of results to return. The service
+     * may return fewer than this value.
+     *
+     * If unspecified, at most 5 results will be returned.
+     *
+     * The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT
+     * error.
+     * 
+ * + * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The pageSize to set. + * @return This builder for chaining. + */ + public Builder setPageSize(int value) { + + pageSize_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Specifies the maximum number of results to return. The service
+     * may return fewer than this value.
+     *
+     * If unspecified, at most 5 results will be returned.
+     *
+     * The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT
+     * error.
+     * 
+ * + * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPageSize() { + bitField0_ = (bitField0_ & ~0x00000002); + pageSize_ = 0; + onChanged(); + return this; + } + + private java.lang.Object pageToken_ = ""; + + /** + * + * + *
+     * Optional. Contains a page token, received from a previous
+     * `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.
+     * 
+ * + * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The pageToken. + */ + public java.lang.String getPageToken() { + java.lang.Object ref = pageToken_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + pageToken_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Optional. Contains a page token, received from a previous
+     * `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.
+     * 
+ * + * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for pageToken. + */ + public com.google.protobuf.ByteString getPageTokenBytes() { + java.lang.Object ref = pageToken_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + pageToken_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Optional. Contains a page token, received from a previous
+     * `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.
+     * 
+ * + * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The pageToken to set. + * @return This builder for chaining. + */ + public Builder setPageToken(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + pageToken_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Contains a page token, received from a previous
+     * `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.
+     * 
+ * + * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPageToken() { + pageToken_ = getDefaultInstance().getPageToken(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Contains a page token, received from a previous
+     * `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.
+     * 
+ * + * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for pageToken to set. + * @return This builder for chaining. + */ + public Builder setPageTokenBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + pageToken_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private java.lang.Object filter_ = ""; + + /** + * + * + *
+     * Optional. Applies a strict filter to the search results. The expression
+     * supports a subset of the syntax described at https://google.aip.dev/160.
+     *
+     * While `SearchDocumentChunks` returns
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s, the filter
+     * is applied to `DocumentChunk.document` fields.
+     *
+     * Supported fields for filtering:
+     *
+     * * `data_source` (STRING): The source of the document, e.g.
+     * `docs.cloud.google.com`. See
+     * https://developers.google.com/knowledge/reference/corpus-reference for
+     * the complete list of data sources in the corpus.
+     * * `update_time` (TIMESTAMP): The timestamp of when the document was last
+     * meaningfully updated. A meaningful update is one that changes document's
+     * markdown content or metadata.
+     * * `uri` (STRING): The document URI, e.g.
+     * `https://docs.cloud.google.com/bigquery/docs/tables`.
+     *
+     * STRING fields support `=` (equals) and `!=` (not equals) operators for
+     * **exact match** on the whole string. Partial match, prefix match, and
+     * regexp match are not supported.
+     *
+     * TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators.
+     * Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`.
+     *
+     * You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical
+     * operators. `OR` has higher precedence than `AND`. Use parentheses for
+     * explicit precedence grouping.
+     *
+     * Examples:
+     *
+     * * `data_source = "docs.cloud.google.com" OR data_source =
+     * "firebase.google.com"`
+     * * `data_source != "firebase.google.com"`
+     * * `update_time < "2024-01-01T00:00:00Z"`
+     * * `update_time >= "2025-01-22T00:00:00Z" AND (data_source =
+     * "developer.chrome.com" OR data_source = "web.dev")`
+     * * `uri = "https://docs.cloud.google.com/release-notes"`
+     *
+     * The `filter` string must not exceed 500 characters; values longer than 500
+     * characters will result in an `INVALID_ARGUMENT` error.
+     * 
+ * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + public java.lang.String getFilter() { + java.lang.Object ref = filter_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + filter_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Optional. Applies a strict filter to the search results. The expression
+     * supports a subset of the syntax described at https://google.aip.dev/160.
+     *
+     * While `SearchDocumentChunks` returns
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s, the filter
+     * is applied to `DocumentChunk.document` fields.
+     *
+     * Supported fields for filtering:
+     *
+     * * `data_source` (STRING): The source of the document, e.g.
+     * `docs.cloud.google.com`. See
+     * https://developers.google.com/knowledge/reference/corpus-reference for
+     * the complete list of data sources in the corpus.
+     * * `update_time` (TIMESTAMP): The timestamp of when the document was last
+     * meaningfully updated. A meaningful update is one that changes document's
+     * markdown content or metadata.
+     * * `uri` (STRING): The document URI, e.g.
+     * `https://docs.cloud.google.com/bigquery/docs/tables`.
+     *
+     * STRING fields support `=` (equals) and `!=` (not equals) operators for
+     * **exact match** on the whole string. Partial match, prefix match, and
+     * regexp match are not supported.
+     *
+     * TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators.
+     * Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`.
+     *
+     * You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical
+     * operators. `OR` has higher precedence than `AND`. Use parentheses for
+     * explicit precedence grouping.
+     *
+     * Examples:
+     *
+     * * `data_source = "docs.cloud.google.com" OR data_source =
+     * "firebase.google.com"`
+     * * `data_source != "firebase.google.com"`
+     * * `update_time < "2024-01-01T00:00:00Z"`
+     * * `update_time >= "2025-01-22T00:00:00Z" AND (data_source =
+     * "developer.chrome.com" OR data_source = "web.dev")`
+     * * `uri = "https://docs.cloud.google.com/release-notes"`
+     *
+     * The `filter` string must not exceed 500 characters; values longer than 500
+     * characters will result in an `INVALID_ARGUMENT` error.
+     * 
+ * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + public com.google.protobuf.ByteString getFilterBytes() { + java.lang.Object ref = filter_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + filter_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Optional. Applies a strict filter to the search results. The expression
+     * supports a subset of the syntax described at https://google.aip.dev/160.
+     *
+     * While `SearchDocumentChunks` returns
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s, the filter
+     * is applied to `DocumentChunk.document` fields.
+     *
+     * Supported fields for filtering:
+     *
+     * * `data_source` (STRING): The source of the document, e.g.
+     * `docs.cloud.google.com`. See
+     * https://developers.google.com/knowledge/reference/corpus-reference for
+     * the complete list of data sources in the corpus.
+     * * `update_time` (TIMESTAMP): The timestamp of when the document was last
+     * meaningfully updated. A meaningful update is one that changes document's
+     * markdown content or metadata.
+     * * `uri` (STRING): The document URI, e.g.
+     * `https://docs.cloud.google.com/bigquery/docs/tables`.
+     *
+     * STRING fields support `=` (equals) and `!=` (not equals) operators for
+     * **exact match** on the whole string. Partial match, prefix match, and
+     * regexp match are not supported.
+     *
+     * TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators.
+     * Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`.
+     *
+     * You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical
+     * operators. `OR` has higher precedence than `AND`. Use parentheses for
+     * explicit precedence grouping.
+     *
+     * Examples:
+     *
+     * * `data_source = "docs.cloud.google.com" OR data_source =
+     * "firebase.google.com"`
+     * * `data_source != "firebase.google.com"`
+     * * `update_time < "2024-01-01T00:00:00Z"`
+     * * `update_time >= "2025-01-22T00:00:00Z" AND (data_source =
+     * "developer.chrome.com" OR data_source = "web.dev")`
+     * * `uri = "https://docs.cloud.google.com/release-notes"`
+     *
+     * The `filter` string must not exceed 500 characters; values longer than 500
+     * characters will result in an `INVALID_ARGUMENT` error.
+     * 
+ * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The filter to set. + * @return This builder for chaining. + */ + public Builder setFilter(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Applies a strict filter to the search results. The expression
+     * supports a subset of the syntax described at https://google.aip.dev/160.
+     *
+     * While `SearchDocumentChunks` returns
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s, the filter
+     * is applied to `DocumentChunk.document` fields.
+     *
+     * Supported fields for filtering:
+     *
+     * * `data_source` (STRING): The source of the document, e.g.
+     * `docs.cloud.google.com`. See
+     * https://developers.google.com/knowledge/reference/corpus-reference for
+     * the complete list of data sources in the corpus.
+     * * `update_time` (TIMESTAMP): The timestamp of when the document was last
+     * meaningfully updated. A meaningful update is one that changes document's
+     * markdown content or metadata.
+     * * `uri` (STRING): The document URI, e.g.
+     * `https://docs.cloud.google.com/bigquery/docs/tables`.
+     *
+     * STRING fields support `=` (equals) and `!=` (not equals) operators for
+     * **exact match** on the whole string. Partial match, prefix match, and
+     * regexp match are not supported.
+     *
+     * TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators.
+     * Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`.
+     *
+     * You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical
+     * operators. `OR` has higher precedence than `AND`. Use parentheses for
+     * explicit precedence grouping.
+     *
+     * Examples:
+     *
+     * * `data_source = "docs.cloud.google.com" OR data_source =
+     * "firebase.google.com"`
+     * * `data_source != "firebase.google.com"`
+     * * `update_time < "2024-01-01T00:00:00Z"`
+     * * `update_time >= "2025-01-22T00:00:00Z" AND (data_source =
+     * "developer.chrome.com" OR data_source = "web.dev")`
+     * * `uri = "https://docs.cloud.google.com/release-notes"`
+     *
+     * The `filter` string must not exceed 500 characters; values longer than 500
+     * characters will result in an `INVALID_ARGUMENT` error.
+     * 
+ * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearFilter() { + filter_ = getDefaultInstance().getFilter(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Applies a strict filter to the search results. The expression
+     * supports a subset of the syntax described at https://google.aip.dev/160.
+     *
+     * While `SearchDocumentChunks` returns
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s, the filter
+     * is applied to `DocumentChunk.document` fields.
+     *
+     * Supported fields for filtering:
+     *
+     * * `data_source` (STRING): The source of the document, e.g.
+     * `docs.cloud.google.com`. See
+     * https://developers.google.com/knowledge/reference/corpus-reference for
+     * the complete list of data sources in the corpus.
+     * * `update_time` (TIMESTAMP): The timestamp of when the document was last
+     * meaningfully updated. A meaningful update is one that changes document's
+     * markdown content or metadata.
+     * * `uri` (STRING): The document URI, e.g.
+     * `https://docs.cloud.google.com/bigquery/docs/tables`.
+     *
+     * STRING fields support `=` (equals) and `!=` (not equals) operators for
+     * **exact match** on the whole string. Partial match, prefix match, and
+     * regexp match are not supported.
+     *
+     * TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators.
+     * Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`.
+     *
+     * You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical
+     * operators. `OR` has higher precedence than `AND`. Use parentheses for
+     * explicit precedence grouping.
+     *
+     * Examples:
+     *
+     * * `data_source = "docs.cloud.google.com" OR data_source =
+     * "firebase.google.com"`
+     * * `data_source != "firebase.google.com"`
+     * * `update_time < "2024-01-01T00:00:00Z"`
+     * * `update_time >= "2025-01-22T00:00:00Z" AND (data_source =
+     * "developer.chrome.com" OR data_source = "web.dev")`
+     * * `uri = "https://docs.cloud.google.com/release-notes"`
+     *
+     * The `filter` string must not exceed 500 characters; values longer than 500
+     * characters will result in an `INVALID_ARGUMENT` error.
+     * 
+ * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for filter to set. + * @return This builder for chaining. + */ + public Builder setFilterBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + filter_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.developers.knowledge.v1.SearchDocumentChunksRequest) + } + + // @@protoc_insertion_point(class_scope:google.developers.knowledge.v1.SearchDocumentChunksRequest) + private static final com.google.developers.knowledge.v1.SearchDocumentChunksRequest + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.developers.knowledge.v1.SearchDocumentChunksRequest(); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksRequest + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public SearchDocumentChunksRequest 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.developers.knowledge.v1.SearchDocumentChunksRequest + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksRequestOrBuilder.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksRequestOrBuilder.java new file mode 100644 index 000000000000..751a3360da2c --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksRequestOrBuilder.java @@ -0,0 +1,211 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +@com.google.protobuf.Generated +public interface SearchDocumentChunksRequestOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.developers.knowledge.v1.SearchDocumentChunksRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Required. Provides the raw query string provided by the user, such as "How
+   * to create a Cloud Storage bucket?".
+   * 
+ * + * string query = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The query. + */ + java.lang.String getQuery(); + + /** + * + * + *
+   * Required. Provides the raw query string provided by the user, such as "How
+   * to create a Cloud Storage bucket?".
+   * 
+ * + * string query = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for query. + */ + com.google.protobuf.ByteString getQueryBytes(); + + /** + * + * + *
+   * Optional. Specifies the maximum number of results to return. The service
+   * may return fewer than this value.
+   *
+   * If unspecified, at most 5 results will be returned.
+   *
+   * The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT
+   * error.
+   * 
+ * + * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The pageSize. + */ + int getPageSize(); + + /** + * + * + *
+   * Optional. Contains a page token, received from a previous
+   * `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.
+   * 
+ * + * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The pageToken. + */ + java.lang.String getPageToken(); + + /** + * + * + *
+   * Optional. Contains a page token, received from a previous
+   * `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.
+   * 
+ * + * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for pageToken. + */ + com.google.protobuf.ByteString getPageTokenBytes(); + + /** + * + * + *
+   * Optional. Applies a strict filter to the search results. The expression
+   * supports a subset of the syntax described at https://google.aip.dev/160.
+   *
+   * While `SearchDocumentChunks` returns
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s, the filter
+   * is applied to `DocumentChunk.document` fields.
+   *
+   * Supported fields for filtering:
+   *
+   * * `data_source` (STRING): The source of the document, e.g.
+   * `docs.cloud.google.com`. See
+   * https://developers.google.com/knowledge/reference/corpus-reference for
+   * the complete list of data sources in the corpus.
+   * * `update_time` (TIMESTAMP): The timestamp of when the document was last
+   * meaningfully updated. A meaningful update is one that changes document's
+   * markdown content or metadata.
+   * * `uri` (STRING): The document URI, e.g.
+   * `https://docs.cloud.google.com/bigquery/docs/tables`.
+   *
+   * STRING fields support `=` (equals) and `!=` (not equals) operators for
+   * **exact match** on the whole string. Partial match, prefix match, and
+   * regexp match are not supported.
+   *
+   * TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators.
+   * Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`.
+   *
+   * You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical
+   * operators. `OR` has higher precedence than `AND`. Use parentheses for
+   * explicit precedence grouping.
+   *
+   * Examples:
+   *
+   * * `data_source = "docs.cloud.google.com" OR data_source =
+   * "firebase.google.com"`
+   * * `data_source != "firebase.google.com"`
+   * * `update_time < "2024-01-01T00:00:00Z"`
+   * * `update_time >= "2025-01-22T00:00:00Z" AND (data_source =
+   * "developer.chrome.com" OR data_source = "web.dev")`
+   * * `uri = "https://docs.cloud.google.com/release-notes"`
+   *
+   * The `filter` string must not exceed 500 characters; values longer than 500
+   * characters will result in an `INVALID_ARGUMENT` error.
+   * 
+ * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The filter. + */ + java.lang.String getFilter(); + + /** + * + * + *
+   * Optional. Applies a strict filter to the search results. The expression
+   * supports a subset of the syntax described at https://google.aip.dev/160.
+   *
+   * While `SearchDocumentChunks` returns
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s, the filter
+   * is applied to `DocumentChunk.document` fields.
+   *
+   * Supported fields for filtering:
+   *
+   * * `data_source` (STRING): The source of the document, e.g.
+   * `docs.cloud.google.com`. See
+   * https://developers.google.com/knowledge/reference/corpus-reference for
+   * the complete list of data sources in the corpus.
+   * * `update_time` (TIMESTAMP): The timestamp of when the document was last
+   * meaningfully updated. A meaningful update is one that changes document's
+   * markdown content or metadata.
+   * * `uri` (STRING): The document URI, e.g.
+   * `https://docs.cloud.google.com/bigquery/docs/tables`.
+   *
+   * STRING fields support `=` (equals) and `!=` (not equals) operators for
+   * **exact match** on the whole string. Partial match, prefix match, and
+   * regexp match are not supported.
+   *
+   * TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators.
+   * Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`.
+   *
+   * You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical
+   * operators. `OR` has higher precedence than `AND`. Use parentheses for
+   * explicit precedence grouping.
+   *
+   * Examples:
+   *
+   * * `data_source = "docs.cloud.google.com" OR data_source =
+   * "firebase.google.com"`
+   * * `data_source != "firebase.google.com"`
+   * * `update_time < "2024-01-01T00:00:00Z"`
+   * * `update_time >= "2025-01-22T00:00:00Z" AND (data_source =
+   * "developer.chrome.com" OR data_source = "web.dev")`
+   * * `uri = "https://docs.cloud.google.com/release-notes"`
+   *
+   * The `filter` string must not exceed 500 characters; values longer than 500
+   * characters will result in an `INVALID_ARGUMENT` error.
+   * 
+ * + * string filter = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for filter. + */ + com.google.protobuf.ByteString getFilterBytes(); +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksResponse.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksResponse.java new file mode 100644 index 000000000000..3e562acf41d6 --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksResponse.java @@ -0,0 +1,1316 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +/** + * + * + *
+ * Response message for
+ * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks].
+ * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.SearchDocumentChunksResponse} + */ +@com.google.protobuf.Generated +public final class SearchDocumentChunksResponse extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.developers.knowledge.v1.SearchDocumentChunksResponse) + SearchDocumentChunksResponseOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "SearchDocumentChunksResponse"); + } + + // Use SearchDocumentChunksResponse.newBuilder() to construct. + private SearchDocumentChunksResponse(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private SearchDocumentChunksResponse() { + results_ = java.util.Collections.emptyList(); + nextPageToken_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_SearchDocumentChunksResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_SearchDocumentChunksResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.SearchDocumentChunksResponse.class, + com.google.developers.knowledge.v1.SearchDocumentChunksResponse.Builder.class); + } + + public static final int RESULTS_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private java.util.List results_; + + /** + * + * + *
+   * Contains the search results for the given query. Each
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+   * contains a snippet of content relevant to the search query. Use the
+   * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+   * field of each result with
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to retrieve the full document content.
+   * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + @java.lang.Override + public java.util.List getResultsList() { + return results_; + } + + /** + * + * + *
+   * Contains the search results for the given query. Each
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+   * contains a snippet of content relevant to the search query. Use the
+   * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+   * field of each result with
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to retrieve the full document content.
+   * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + @java.lang.Override + public java.util.List + getResultsOrBuilderList() { + return results_; + } + + /** + * + * + *
+   * Contains the search results for the given query. Each
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+   * contains a snippet of content relevant to the search query. Use the
+   * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+   * field of each result with
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to retrieve the full document content.
+   * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + @java.lang.Override + public int getResultsCount() { + return results_.size(); + } + + /** + * + * + *
+   * Contains the search results for the given query. Each
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+   * contains a snippet of content relevant to the search query. Use the
+   * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+   * field of each result with
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to retrieve the full document content.
+   * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentChunk getResults(int index) { + return results_.get(index); + } + + /** + * + * + *
+   * Contains the search results for the given query. Each
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+   * contains a snippet of content relevant to the search query. Use the
+   * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+   * field of each result with
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to retrieve the full document content.
+   * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + @java.lang.Override + public com.google.developers.knowledge.v1.DocumentChunkOrBuilder getResultsOrBuilder(int index) { + return results_.get(index); + } + + public static final int NEXT_PAGE_TOKEN_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object nextPageToken_ = ""; + + /** + * + * + *
+   * Optional. Provides a token that can be sent as `page_token` to retrieve the
+   * next page. If this field is omitted, there are no subsequent pages.
+   * 
+ * + * string next_page_token = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The nextPageToken. + */ + @java.lang.Override + public java.lang.String getNextPageToken() { + java.lang.Object ref = nextPageToken_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nextPageToken_ = s; + return s; + } + } + + /** + * + * + *
+   * Optional. Provides a token that can be sent as `page_token` to retrieve the
+   * next page. If this field is omitted, there are no subsequent pages.
+   * 
+ * + * string next_page_token = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for nextPageToken. + */ + @java.lang.Override + public com.google.protobuf.ByteString getNextPageTokenBytes() { + java.lang.Object ref = nextPageToken_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + nextPageToken_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + for (int i = 0; i < results_.size(); i++) { + output.writeMessage(1, results_.get(i)); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(nextPageToken_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, nextPageToken_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + for (int i = 0; i < results_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, results_.get(i)); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(nextPageToken_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, nextPageToken_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.developers.knowledge.v1.SearchDocumentChunksResponse)) { + return super.equals(obj); + } + com.google.developers.knowledge.v1.SearchDocumentChunksResponse other = + (com.google.developers.knowledge.v1.SearchDocumentChunksResponse) obj; + + if (!getResultsList().equals(other.getResultsList())) return false; + if (!getNextPageToken().equals(other.getNextPageToken())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (getResultsCount() > 0) { + hash = (37 * hash) + RESULTS_FIELD_NUMBER; + hash = (53 * hash) + getResultsList().hashCode(); + } + hash = (37 * hash) + NEXT_PAGE_TOKEN_FIELD_NUMBER; + hash = (53 * hash) + getNextPageToken().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse 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.developers.knowledge.v1.SearchDocumentChunksResponse parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.developers.knowledge.v1.SearchDocumentChunksResponse prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+   * Response message for
+   * [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks].
+   * 
+ * + * Protobuf type {@code google.developers.knowledge.v1.SearchDocumentChunksResponse} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.developers.knowledge.v1.SearchDocumentChunksResponse) + com.google.developers.knowledge.v1.SearchDocumentChunksResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_SearchDocumentChunksResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_SearchDocumentChunksResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.developers.knowledge.v1.SearchDocumentChunksResponse.class, + com.google.developers.knowledge.v1.SearchDocumentChunksResponse.Builder.class); + } + + // Construct using com.google.developers.knowledge.v1.SearchDocumentChunksResponse.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (resultsBuilder_ == null) { + results_ = java.util.Collections.emptyList(); + } else { + results_ = null; + resultsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + nextPageToken_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.developers.knowledge.v1.DeveloperKnowledgeProto + .internal_static_google_developers_knowledge_v1_SearchDocumentChunksResponse_descriptor; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.SearchDocumentChunksResponse + getDefaultInstanceForType() { + return com.google.developers.knowledge.v1.SearchDocumentChunksResponse.getDefaultInstance(); + } + + @java.lang.Override + public com.google.developers.knowledge.v1.SearchDocumentChunksResponse build() { + com.google.developers.knowledge.v1.SearchDocumentChunksResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.developers.knowledge.v1.SearchDocumentChunksResponse buildPartial() { + com.google.developers.knowledge.v1.SearchDocumentChunksResponse result = + new com.google.developers.knowledge.v1.SearchDocumentChunksResponse(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields( + com.google.developers.knowledge.v1.SearchDocumentChunksResponse result) { + if (resultsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + results_ = java.util.Collections.unmodifiableList(results_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.results_ = results_; + } else { + result.results_ = resultsBuilder_.build(); + } + } + + private void buildPartial0( + com.google.developers.knowledge.v1.SearchDocumentChunksResponse result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.nextPageToken_ = nextPageToken_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.developers.knowledge.v1.SearchDocumentChunksResponse) { + return mergeFrom((com.google.developers.knowledge.v1.SearchDocumentChunksResponse) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.developers.knowledge.v1.SearchDocumentChunksResponse other) { + if (other + == com.google.developers.knowledge.v1.SearchDocumentChunksResponse.getDefaultInstance()) + return this; + if (resultsBuilder_ == null) { + if (!other.results_.isEmpty()) { + if (results_.isEmpty()) { + results_ = other.results_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureResultsIsMutable(); + results_.addAll(other.results_); + } + onChanged(); + } + } else { + if (!other.results_.isEmpty()) { + if (resultsBuilder_.isEmpty()) { + resultsBuilder_.dispose(); + resultsBuilder_ = null; + results_ = other.results_; + bitField0_ = (bitField0_ & ~0x00000001); + resultsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders + ? internalGetResultsFieldBuilder() + : null; + } else { + resultsBuilder_.addAllMessages(other.results_); + } + } + } + if (!other.getNextPageToken().isEmpty()) { + nextPageToken_ = other.nextPageToken_; + bitField0_ |= 0x00000002; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + com.google.developers.knowledge.v1.DocumentChunk m = + input.readMessage( + com.google.developers.knowledge.v1.DocumentChunk.parser(), + extensionRegistry); + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + results_.add(m); + } else { + resultsBuilder_.addMessage(m); + } + break; + } // case 10 + case 18: + { + nextPageToken_ = 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.util.List results_ = + java.util.Collections.emptyList(); + + private void ensureResultsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + results_ = + new java.util.ArrayList(results_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.developers.knowledge.v1.DocumentChunk, + com.google.developers.knowledge.v1.DocumentChunk.Builder, + com.google.developers.knowledge.v1.DocumentChunkOrBuilder> + resultsBuilder_; + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public java.util.List getResultsList() { + if (resultsBuilder_ == null) { + return java.util.Collections.unmodifiableList(results_); + } else { + return resultsBuilder_.getMessageList(); + } + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public int getResultsCount() { + if (resultsBuilder_ == null) { + return results_.size(); + } else { + return resultsBuilder_.getCount(); + } + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public com.google.developers.knowledge.v1.DocumentChunk getResults(int index) { + if (resultsBuilder_ == null) { + return results_.get(index); + } else { + return resultsBuilder_.getMessage(index); + } + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public Builder setResults(int index, com.google.developers.knowledge.v1.DocumentChunk value) { + if (resultsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureResultsIsMutable(); + results_.set(index, value); + onChanged(); + } else { + resultsBuilder_.setMessage(index, value); + } + return this; + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public Builder setResults( + int index, com.google.developers.knowledge.v1.DocumentChunk.Builder builderForValue) { + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + results_.set(index, builderForValue.build()); + onChanged(); + } else { + resultsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public Builder addResults(com.google.developers.knowledge.v1.DocumentChunk value) { + if (resultsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureResultsIsMutable(); + results_.add(value); + onChanged(); + } else { + resultsBuilder_.addMessage(value); + } + return this; + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public Builder addResults(int index, com.google.developers.knowledge.v1.DocumentChunk value) { + if (resultsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureResultsIsMutable(); + results_.add(index, value); + onChanged(); + } else { + resultsBuilder_.addMessage(index, value); + } + return this; + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public Builder addResults( + com.google.developers.knowledge.v1.DocumentChunk.Builder builderForValue) { + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + results_.add(builderForValue.build()); + onChanged(); + } else { + resultsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public Builder addResults( + int index, com.google.developers.knowledge.v1.DocumentChunk.Builder builderForValue) { + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + results_.add(index, builderForValue.build()); + onChanged(); + } else { + resultsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public Builder addAllResults( + java.lang.Iterable values) { + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, results_); + onChanged(); + } else { + resultsBuilder_.addAllMessages(values); + } + return this; + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public Builder clearResults() { + if (resultsBuilder_ == null) { + results_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + resultsBuilder_.clear(); + } + return this; + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public Builder removeResults(int index) { + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + results_.remove(index); + onChanged(); + } else { + resultsBuilder_.remove(index); + } + return this; + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public com.google.developers.knowledge.v1.DocumentChunk.Builder getResultsBuilder(int index) { + return internalGetResultsFieldBuilder().getBuilder(index); + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public com.google.developers.knowledge.v1.DocumentChunkOrBuilder getResultsOrBuilder( + int index) { + if (resultsBuilder_ == null) { + return results_.get(index); + } else { + return resultsBuilder_.getMessageOrBuilder(index); + } + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public java.util.List + getResultsOrBuilderList() { + if (resultsBuilder_ != null) { + return resultsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(results_); + } + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public com.google.developers.knowledge.v1.DocumentChunk.Builder addResultsBuilder() { + return internalGetResultsFieldBuilder() + .addBuilder(com.google.developers.knowledge.v1.DocumentChunk.getDefaultInstance()); + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public com.google.developers.knowledge.v1.DocumentChunk.Builder addResultsBuilder(int index) { + return internalGetResultsFieldBuilder() + .addBuilder(index, com.google.developers.knowledge.v1.DocumentChunk.getDefaultInstance()); + } + + /** + * + * + *
+     * Contains the search results for the given query. Each
+     * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+     * contains a snippet of content relevant to the search query. Use the
+     * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+     * field of each result with
+     * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+     * or
+     * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+     * to retrieve the full document content.
+     * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + public java.util.List + getResultsBuilderList() { + return internalGetResultsFieldBuilder().getBuilderList(); + } + + private com.google.protobuf.RepeatedFieldBuilder< + com.google.developers.knowledge.v1.DocumentChunk, + com.google.developers.knowledge.v1.DocumentChunk.Builder, + com.google.developers.knowledge.v1.DocumentChunkOrBuilder> + internalGetResultsFieldBuilder() { + if (resultsBuilder_ == null) { + resultsBuilder_ = + new com.google.protobuf.RepeatedFieldBuilder< + com.google.developers.knowledge.v1.DocumentChunk, + com.google.developers.knowledge.v1.DocumentChunk.Builder, + com.google.developers.knowledge.v1.DocumentChunkOrBuilder>( + results_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); + results_ = null; + } + return resultsBuilder_; + } + + private java.lang.Object nextPageToken_ = ""; + + /** + * + * + *
+     * Optional. Provides a token that can be sent as `page_token` to retrieve the
+     * next page. If this field is omitted, there are no subsequent pages.
+     * 
+ * + * string next_page_token = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The nextPageToken. + */ + public java.lang.String getNextPageToken() { + java.lang.Object ref = nextPageToken_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nextPageToken_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Optional. Provides a token that can be sent as `page_token` to retrieve the
+     * next page. If this field is omitted, there are no subsequent pages.
+     * 
+ * + * string next_page_token = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for nextPageToken. + */ + public com.google.protobuf.ByteString getNextPageTokenBytes() { + java.lang.Object ref = nextPageToken_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + nextPageToken_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Optional. Provides a token that can be sent as `page_token` to retrieve the
+     * next page. If this field is omitted, there are no subsequent pages.
+     * 
+ * + * string next_page_token = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The nextPageToken to set. + * @return This builder for chaining. + */ + public Builder setNextPageToken(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + nextPageToken_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Provides a token that can be sent as `page_token` to retrieve the
+     * next page. If this field is omitted, there are no subsequent pages.
+     * 
+ * + * string next_page_token = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearNextPageToken() { + nextPageToken_ = getDefaultInstance().getNextPageToken(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Provides a token that can be sent as `page_token` to retrieve the
+     * next page. If this field is omitted, there are no subsequent pages.
+     * 
+ * + * string next_page_token = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for nextPageToken to set. + * @return This builder for chaining. + */ + public Builder setNextPageTokenBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + nextPageToken_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.developers.knowledge.v1.SearchDocumentChunksResponse) + } + + // @@protoc_insertion_point(class_scope:google.developers.knowledge.v1.SearchDocumentChunksResponse) + private static final com.google.developers.knowledge.v1.SearchDocumentChunksResponse + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.developers.knowledge.v1.SearchDocumentChunksResponse(); + } + + public static com.google.developers.knowledge.v1.SearchDocumentChunksResponse + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public SearchDocumentChunksResponse 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.developers.knowledge.v1.SearchDocumentChunksResponse + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksResponseOrBuilder.java b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksResponseOrBuilder.java new file mode 100644 index 000000000000..9fdfb211a671 --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/java/com/google/developers/knowledge/v1/SearchDocumentChunksResponseOrBuilder.java @@ -0,0 +1,152 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/developers/knowledge/v1/developerknowledge.proto +// Protobuf Java Version: 4.33.2 + +package com.google.developers.knowledge.v1; + +@com.google.protobuf.Generated +public interface SearchDocumentChunksResponseOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.developers.knowledge.v1.SearchDocumentChunksResponse) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Contains the search results for the given query. Each
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+   * contains a snippet of content relevant to the search query. Use the
+   * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+   * field of each result with
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to retrieve the full document content.
+   * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + java.util.List getResultsList(); + + /** + * + * + *
+   * Contains the search results for the given query. Each
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+   * contains a snippet of content relevant to the search query. Use the
+   * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+   * field of each result with
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to retrieve the full document content.
+   * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + com.google.developers.knowledge.v1.DocumentChunk getResults(int index); + + /** + * + * + *
+   * Contains the search results for the given query. Each
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+   * contains a snippet of content relevant to the search query. Use the
+   * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+   * field of each result with
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to retrieve the full document content.
+   * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + int getResultsCount(); + + /** + * + * + *
+   * Contains the search results for the given query. Each
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+   * contains a snippet of content relevant to the search query. Use the
+   * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+   * field of each result with
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to retrieve the full document content.
+   * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + java.util.List + getResultsOrBuilderList(); + + /** + * + * + *
+   * Contains the search results for the given query. Each
+   * [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list
+   * contains a snippet of content relevant to the search query. Use the
+   * [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent]
+   * field of each result with
+   * [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]
+   * or
+   * [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]
+   * to retrieve the full document content.
+   * 
+ * + * repeated .google.developers.knowledge.v1.DocumentChunk results = 1; + */ + com.google.developers.knowledge.v1.DocumentChunkOrBuilder getResultsOrBuilder(int index); + + /** + * + * + *
+   * Optional. Provides a token that can be sent as `page_token` to retrieve the
+   * next page. If this field is omitted, there are no subsequent pages.
+   * 
+ * + * string next_page_token = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The nextPageToken. + */ + java.lang.String getNextPageToken(); + + /** + * + * + *
+   * Optional. Provides a token that can be sent as `page_token` to retrieve the
+   * next page. If this field is omitted, there are no subsequent pages.
+   * 
+ * + * string next_page_token = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for nextPageToken. + */ + com.google.protobuf.ByteString getNextPageTokenBytes(); +} diff --git a/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/proto/google/developers/knowledge/v1/developerknowledge.proto b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/proto/google/developers/knowledge/v1/developerknowledge.proto new file mode 100644 index 000000000000..aa877689d45f --- /dev/null +++ b/java-developerknowledge/proto-google-cloud-developer-knowledge-v1/src/main/proto/google/developers/knowledge/v1/developerknowledge.proto @@ -0,0 +1,341 @@ +// Copyright 2026 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.developers.knowledge.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Developers.DeveloperKnowledge.V1"; +option go_package = "google.golang.org/genproto/googleapis/developers/knowledge/v1;knowledge"; +option java_multiple_files = true; +option java_outer_classname = "DeveloperKnowledgeProto"; +option java_package = "com.google.developers.knowledge.v1"; +option php_namespace = "Google\\Developers\\DeveloperKnowledge\\V1"; +option ruby_package = "Google::Developers::DeveloperKnowledge::V1"; + +// The Developer Knowledge API provides programmatic access to Google's public +// developer documentation, enabling you to integrate this knowledge base into +// your own applications and workflows. +// +// The API is designed to be the canonical source for machine-readable access to +// Google's developer documentation. +// +// A typical use case is to first use +// [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks] +// to find relevant page URIs based on a query, and then use +// [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] +// or +// [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] +// to fetch the full content of the top results. +// +// All document content is provided in Markdown format. +service DeveloperKnowledge { + option (google.api.default_host) = "developerknowledge.googleapis.com"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform"; + + // Searches for developer knowledge across Google's developer documentation. + // Returns [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s + // based on the user's query. There may be many chunks from the same + // [Document][google.developers.knowledge.v1.Document]. To retrieve full + // documents, use + // [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] + // or + // [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] + // with the + // [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent] + // returned in the + // [SearchDocumentChunksResponse.results][google.developers.knowledge.v1.SearchDocumentChunksResponse.results]. + rpc SearchDocumentChunks(SearchDocumentChunksRequest) + returns (SearchDocumentChunksResponse) { + option (google.api.http) = { + get: "/v1/documents:searchDocumentChunks" + }; + } + + // Retrieves a single document with its full Markdown content. + rpc GetDocument(GetDocumentRequest) returns (Document) { + option (google.api.http) = { + get: "/v1/{name=documents/**}" + }; + option (google.api.method_signature) = "name"; + } + + // Retrieves multiple documents, each with its full Markdown content. + rpc BatchGetDocuments(BatchGetDocumentsRequest) + returns (BatchGetDocumentsResponse) { + option (google.api.http) = { + get: "/v1/documents:batchGet" + }; + } +} + +// Specifies which fields of the +// [Document][google.developers.knowledge.v1.Document] are included. +enum DocumentView { + // The default / unset value. See each API method for its default value if + // [DocumentView][google.developers.knowledge.v1.DocumentView] is not + // specified. + DOCUMENT_VIEW_UNSPECIFIED = 0; + + // Includes only the basic metadata fields: + // - `name` + // - `uri` + // - `data_source` + // - `title` + // - `description` + // - `update_time` + // - `view` + // + // This is the default of view for + // [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks]. + DOCUMENT_VIEW_BASIC = 1; + + // Includes all [Document][google.developers.knowledge.v1.Document] fields. + DOCUMENT_VIEW_FULL = 2; + + // Includes the `DOCUMENT_VIEW_BASIC` fields and the `content` field. + // + // This is the default of view for + // [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] + // and + // [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]. + DOCUMENT_VIEW_CONTENT = 3; +} + +// A Document represents a piece of content from the Developer Knowledge corpus. +message Document { + option (google.api.resource) = { + type: "developerknowledge.googleapis.com/Document" + pattern: "documents/{document}" + plural: "documents" + singular: "document" + }; + + // Identifier. Contains the resource name of the document. + // Format: `documents/{uri_without_scheme}` + // Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + string name = 1 [(google.api.field_behavior) = IDENTIFIER]; + + // Output only. Provides the URI of the content, such as + // `docs.cloud.google.com/storage/docs/creating-buckets`. + string uri = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Contains the full content of the document in Markdown format. + string content = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Provides a description of the document. + string description = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Specifies the data source of the document. + // Example data source: `firebase.google.com` + string data_source = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Provides the title of the document. + string title = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Represents the timestamp when the content or metadata of the + // document was last updated. + google.protobuf.Timestamp update_time = 7 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Specifies the + // [DocumentView][google.developers.knowledge.v1.DocumentView] of the + // document. + DocumentView view = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Request message for +// [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks]. +message SearchDocumentChunksRequest { + // Required. Provides the raw query string provided by the user, such as "How + // to create a Cloud Storage bucket?". + string query = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Specifies the maximum number of results to return. The service + // may return fewer than this value. + // + // If unspecified, at most 5 results will be returned. + // + // The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT + // error. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Contains a page token, received from a previous + // `SearchDocumentChunks` call. Provide this to retrieve the subsequent page. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Applies a strict filter to the search results. The expression + // supports a subset of the syntax described at https://google.aip.dev/160. + // + // While `SearchDocumentChunks` returns + // [DocumentChunk][google.developers.knowledge.v1.DocumentChunk]s, the filter + // is applied to `DocumentChunk.document` fields. + // + // Supported fields for filtering: + // + // * `data_source` (STRING): The source of the document, e.g. + // `docs.cloud.google.com`. See + // https://developers.google.com/knowledge/reference/corpus-reference for + // the complete list of data sources in the corpus. + // * `update_time` (TIMESTAMP): The timestamp of when the document was last + // meaningfully updated. A meaningful update is one that changes document's + // markdown content or metadata. + // * `uri` (STRING): The document URI, e.g. + // `https://docs.cloud.google.com/bigquery/docs/tables`. + // + // STRING fields support `=` (equals) and `!=` (not equals) operators for + // **exact match** on the whole string. Partial match, prefix match, and + // regexp match are not supported. + // + // TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators. + // Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`. + // + // You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical + // operators. `OR` has higher precedence than `AND`. Use parentheses for + // explicit precedence grouping. + // + // Examples: + // + // * `data_source = "docs.cloud.google.com" OR data_source = + // "firebase.google.com"` + // * `data_source != "firebase.google.com"` + // * `update_time < "2024-01-01T00:00:00Z"` + // * `update_time >= "2025-01-22T00:00:00Z" AND (data_source = + // "developer.chrome.com" OR data_source = "web.dev")` + // * `uri = "https://docs.cloud.google.com/release-notes"` + // + // The `filter` string must not exceed 500 characters; values longer than 500 + // characters will result in an `INVALID_ARGUMENT` error. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for +// [DeveloperKnowledge.SearchDocumentChunks][google.developers.knowledge.v1.DeveloperKnowledge.SearchDocumentChunks]. +message SearchDocumentChunksResponse { + // Contains the search results for the given query. Each + // [DocumentChunk][google.developers.knowledge.v1.DocumentChunk] in this list + // contains a snippet of content relevant to the search query. Use the + // [DocumentChunk.parent][google.developers.knowledge.v1.DocumentChunk.parent] + // field of each result with + // [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] + // or + // [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] + // to retrieve the full document content. + repeated DocumentChunk results = 1; + + // Optional. Provides a token that can be sent as `page_token` to retrieve the + // next page. If this field is omitted, there are no subsequent pages. + string next_page_token = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for +// [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument]. +message GetDocumentRequest { + // Required. Specifies the name of the document to retrieve. + // Format: `documents/{uri_without_scheme}` + // Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "developerknowledge.googleapis.com/Document" + } + ]; + + // Optional. Specifies the + // [DocumentView][google.developers.knowledge.v1.DocumentView] of the + // document. If unspecified, + // [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] + // defaults to `DOCUMENT_VIEW_CONTENT`. + DocumentView view = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for +// [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]. +message BatchGetDocumentsRequest { + // Required. Specifies the names of the documents to retrieve. A maximum of 20 + // documents can be retrieved in a batch. The documents are returned in the + // same order as the `names` in the request. + // + // Format: `documents/{uri_without_scheme}` + // Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + repeated string names = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "developerknowledge.googleapis.com/Document" + } + ]; + + // Optional. Specifies the + // [DocumentView][google.developers.knowledge.v1.DocumentView] of the + // document. If unspecified, + // [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] + // defaults to `DOCUMENT_VIEW_CONTENT`. + DocumentView view = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for +// [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]. +message BatchGetDocumentsResponse { + // Contains the documents requested. + repeated Document documents = 1; +} + +// A DocumentChunk represents a piece of content from a +// [Document][google.developers.knowledge.v1.Document] in the DeveloperKnowledge +// corpus. To fetch the entire document content, pass the `parent` to +// [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] +// or +// [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments]. +message DocumentChunk { + // Output only. Contains the resource name of the document this chunk is from. + // Format: `documents/{uri_without_scheme}` + // Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + string parent = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "developerknowledge.googleapis.com/Document" + } + ]; + + // Output only. Specifies the ID of this chunk within the document. The chunk + // ID is unique within a document, but not globally unique across documents. + // The chunk ID is not stable and may change over time. + string id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Contains the content of the document chunk. + string content = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Represents metadata about the + // [Document][google.developers.knowledge.v1.Document] this chunk is from. The + // [DocumentView][google.developers.knowledge.v1.DocumentView] of this + // [Document][google.developers.knowledge.v1.Document] message will be set to + // `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients + // do not need to call + // [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] + // or + // [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] + // if they only need the metadata fields. Otherwise, clients should use + // [DeveloperKnowledge.GetDocument][google.developers.knowledge.v1.DeveloperKnowledge.GetDocument] + // or + // [DeveloperKnowledge.BatchGetDocuments][google.developers.knowledge.v1.DeveloperKnowledge.BatchGetDocuments] + // to fetch the full document content. + Document document = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/batchgetdocuments/AsyncBatchGetDocuments.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/batchgetdocuments/AsyncBatchGetDocuments.java new file mode 100644 index 000000000000..de4b24bffc4b --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/batchgetdocuments/AsyncBatchGetDocuments.java @@ -0,0 +1,52 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_BatchGetDocuments_async] +import com.google.api.core.ApiFuture; +import com.google.developers.knowledge.v1.BatchGetDocumentsRequest; +import com.google.developers.knowledge.v1.BatchGetDocumentsResponse; +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.DocumentView; +import java.util.ArrayList; + +public class AsyncBatchGetDocuments { + + public static void main(String[] args) throws Exception { + asyncBatchGetDocuments(); + } + + public static void asyncBatchGetDocuments() 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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) { + BatchGetDocumentsRequest request = + BatchGetDocumentsRequest.newBuilder() + .addAllNames(new ArrayList()) + .setView(DocumentView.forNumber(0)) + .build(); + ApiFuture future = + developerKnowledgeClient.batchGetDocumentsCallable().futureCall(request); + // Do something. + BatchGetDocumentsResponse response = future.get(); + } + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_BatchGetDocuments_async] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/batchgetdocuments/SyncBatchGetDocuments.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/batchgetdocuments/SyncBatchGetDocuments.java new file mode 100644 index 000000000000..e156b20f04df --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/batchgetdocuments/SyncBatchGetDocuments.java @@ -0,0 +1,48 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_BatchGetDocuments_sync] +import com.google.developers.knowledge.v1.BatchGetDocumentsRequest; +import com.google.developers.knowledge.v1.BatchGetDocumentsResponse; +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.DocumentView; +import java.util.ArrayList; + +public class SyncBatchGetDocuments { + + public static void main(String[] args) throws Exception { + syncBatchGetDocuments(); + } + + public static void syncBatchGetDocuments() 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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) { + BatchGetDocumentsRequest request = + BatchGetDocumentsRequest.newBuilder() + .addAllNames(new ArrayList()) + .setView(DocumentView.forNumber(0)) + .build(); + BatchGetDocumentsResponse response = developerKnowledgeClient.batchGetDocuments(request); + } + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_BatchGetDocuments_sync] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/create/SyncCreateSetCredentialsProvider.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/create/SyncCreateSetCredentialsProvider.java new file mode 100644 index 000000000000..11792d39c02b --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/create/SyncCreateSetCredentialsProvider.java @@ -0,0 +1,45 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_Create_SetCredentialsProvider_sync] +import com.google.api.gax.core.FixedCredentialsProvider; +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.DeveloperKnowledgeSettings; +import com.google.developers.knowledge.v1.myCredentials; + +public class SyncCreateSetCredentialsProvider { + + public static void main(String[] args) throws Exception { + syncCreateSetCredentialsProvider(); + } + + public static void syncCreateSetCredentialsProvider() 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 + DeveloperKnowledgeSettings developerKnowledgeSettings = + DeveloperKnowledgeSettings.newBuilder() + .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials)) + .build(); + DeveloperKnowledgeClient developerKnowledgeClient = + DeveloperKnowledgeClient.create(developerKnowledgeSettings); + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_Create_SetCredentialsProvider_sync] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/create/SyncCreateSetEndpoint.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/create/SyncCreateSetEndpoint.java new file mode 100644 index 000000000000..5d026060fcda --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/create/SyncCreateSetEndpoint.java @@ -0,0 +1,42 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_Create_SetEndpoint_sync] +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.DeveloperKnowledgeSettings; +import com.google.developers.knowledge.v1.myEndpoint; + +public class SyncCreateSetEndpoint { + + public static void main(String[] args) throws Exception { + syncCreateSetEndpoint(); + } + + public static void syncCreateSetEndpoint() 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 + DeveloperKnowledgeSettings developerKnowledgeSettings = + DeveloperKnowledgeSettings.newBuilder().setEndpoint(myEndpoint).build(); + DeveloperKnowledgeClient developerKnowledgeClient = + DeveloperKnowledgeClient.create(developerKnowledgeSettings); + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_Create_SetEndpoint_sync] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/create/SyncCreateUseHttpJsonTransport.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/create/SyncCreateUseHttpJsonTransport.java new file mode 100644 index 000000000000..df8c48bf9977 --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/create/SyncCreateUseHttpJsonTransport.java @@ -0,0 +1,41 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_Create_UseHttpJsonTransport_sync] +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.DeveloperKnowledgeSettings; + +public class SyncCreateUseHttpJsonTransport { + + public static void main(String[] args) throws Exception { + syncCreateUseHttpJsonTransport(); + } + + public static void syncCreateUseHttpJsonTransport() 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 + DeveloperKnowledgeSettings developerKnowledgeSettings = + DeveloperKnowledgeSettings.newHttpJsonBuilder().build(); + DeveloperKnowledgeClient developerKnowledgeClient = + DeveloperKnowledgeClient.create(developerKnowledgeSettings); + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_Create_UseHttpJsonTransport_sync] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/AsyncGetDocument.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/AsyncGetDocument.java new file mode 100644 index 000000000000..97b6b64c6b83 --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/AsyncGetDocument.java @@ -0,0 +1,52 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_GetDocument_async] +import com.google.api.core.ApiFuture; +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.Document; +import com.google.developers.knowledge.v1.DocumentName; +import com.google.developers.knowledge.v1.DocumentView; +import com.google.developers.knowledge.v1.GetDocumentRequest; + +public class AsyncGetDocument { + + public static void main(String[] args) throws Exception { + asyncGetDocument(); + } + + public static void asyncGetDocument() 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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) { + GetDocumentRequest request = + GetDocumentRequest.newBuilder() + .setName(DocumentName.of("[DOCUMENT]").toString()) + .setView(DocumentView.forNumber(0)) + .build(); + ApiFuture future = + developerKnowledgeClient.getDocumentCallable().futureCall(request); + // Do something. + Document response = future.get(); + } + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_GetDocument_async] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/SyncGetDocument.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/SyncGetDocument.java new file mode 100644 index 000000000000..24483ce29f29 --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/SyncGetDocument.java @@ -0,0 +1,48 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_GetDocument_sync] +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.Document; +import com.google.developers.knowledge.v1.DocumentName; +import com.google.developers.knowledge.v1.DocumentView; +import com.google.developers.knowledge.v1.GetDocumentRequest; + +public class SyncGetDocument { + + public static void main(String[] args) throws Exception { + syncGetDocument(); + } + + public static void syncGetDocument() 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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) { + GetDocumentRequest request = + GetDocumentRequest.newBuilder() + .setName(DocumentName.of("[DOCUMENT]").toString()) + .setView(DocumentView.forNumber(0)) + .build(); + Document response = developerKnowledgeClient.getDocument(request); + } + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_GetDocument_sync] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/SyncGetDocumentDocumentname.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/SyncGetDocumentDocumentname.java new file mode 100644 index 000000000000..db2e4a3f5a8f --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/SyncGetDocumentDocumentname.java @@ -0,0 +1,42 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_GetDocument_Documentname_sync] +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.Document; +import com.google.developers.knowledge.v1.DocumentName; + +public class SyncGetDocumentDocumentname { + + public static void main(String[] args) throws Exception { + syncGetDocumentDocumentname(); + } + + public static void syncGetDocumentDocumentname() 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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) { + DocumentName name = DocumentName.of("[DOCUMENT]"); + Document response = developerKnowledgeClient.getDocument(name); + } + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_GetDocument_Documentname_sync] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/SyncGetDocumentString.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/SyncGetDocumentString.java new file mode 100644 index 000000000000..ee30b600fc19 --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/getdocument/SyncGetDocumentString.java @@ -0,0 +1,42 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_GetDocument_String_sync] +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.Document; +import com.google.developers.knowledge.v1.DocumentName; + +public class SyncGetDocumentString { + + public static void main(String[] args) throws Exception { + syncGetDocumentString(); + } + + public static void syncGetDocumentString() 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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) { + String name = DocumentName.of("[DOCUMENT]").toString(); + Document response = developerKnowledgeClient.getDocument(name); + } + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_GetDocument_String_sync] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/searchdocumentchunks/AsyncSearchDocumentChunks.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/searchdocumentchunks/AsyncSearchDocumentChunks.java new file mode 100644 index 000000000000..0373dd57f39a --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/searchdocumentchunks/AsyncSearchDocumentChunks.java @@ -0,0 +1,54 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_SearchDocumentChunks_async] +import com.google.api.core.ApiFuture; +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.DocumentChunk; +import com.google.developers.knowledge.v1.SearchDocumentChunksRequest; + +public class AsyncSearchDocumentChunks { + + public static void main(String[] args) throws Exception { + asyncSearchDocumentChunks(); + } + + public static void asyncSearchDocumentChunks() 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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) { + SearchDocumentChunksRequest request = + SearchDocumentChunksRequest.newBuilder() + .setQuery("query107944136") + .setPageSize(883849137) + .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") + .build(); + ApiFuture future = + developerKnowledgeClient.searchDocumentChunksPagedCallable().futureCall(request); + // Do something. + for (DocumentChunk element : future.get().iterateAll()) { + // doThingsWith(element); + } + } + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_SearchDocumentChunks_async] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/searchdocumentchunks/AsyncSearchDocumentChunksPaged.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/searchdocumentchunks/AsyncSearchDocumentChunksPaged.java new file mode 100644 index 000000000000..e719b63656f8 --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/searchdocumentchunks/AsyncSearchDocumentChunksPaged.java @@ -0,0 +1,62 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_SearchDocumentChunks_Paged_async] +import com.google.common.base.Strings; +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.DocumentChunk; +import com.google.developers.knowledge.v1.SearchDocumentChunksRequest; +import com.google.developers.knowledge.v1.SearchDocumentChunksResponse; + +public class AsyncSearchDocumentChunksPaged { + + public static void main(String[] args) throws Exception { + asyncSearchDocumentChunksPaged(); + } + + public static void asyncSearchDocumentChunksPaged() 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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) { + SearchDocumentChunksRequest request = + SearchDocumentChunksRequest.newBuilder() + .setQuery("query107944136") + .setPageSize(883849137) + .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") + .build(); + while (true) { + SearchDocumentChunksResponse response = + developerKnowledgeClient.searchDocumentChunksCallable().call(request); + for (DocumentChunk element : response.getResultsList()) { + // doThingsWith(element); + } + String nextPageToken = response.getNextPageToken(); + if (!Strings.isNullOrEmpty(nextPageToken)) { + request = request.toBuilder().setPageToken(nextPageToken).build(); + } else { + break; + } + } + } + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_SearchDocumentChunks_Paged_async] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/searchdocumentchunks/SyncSearchDocumentChunks.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/searchdocumentchunks/SyncSearchDocumentChunks.java new file mode 100644 index 000000000000..be2199ba8339 --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledge/searchdocumentchunks/SyncSearchDocumentChunks.java @@ -0,0 +1,51 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledge_SearchDocumentChunks_sync] +import com.google.developers.knowledge.v1.DeveloperKnowledgeClient; +import com.google.developers.knowledge.v1.DocumentChunk; +import com.google.developers.knowledge.v1.SearchDocumentChunksRequest; + +public class SyncSearchDocumentChunks { + + public static void main(String[] args) throws Exception { + syncSearchDocumentChunks(); + } + + public static void syncSearchDocumentChunks() 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 (DeveloperKnowledgeClient developerKnowledgeClient = DeveloperKnowledgeClient.create()) { + SearchDocumentChunksRequest request = + SearchDocumentChunksRequest.newBuilder() + .setQuery("query107944136") + .setPageSize(883849137) + .setPageToken("pageToken873572522") + .setFilter("filter-1274492040") + .build(); + for (DocumentChunk element : + developerKnowledgeClient.searchDocumentChunks(request).iterateAll()) { + // doThingsWith(element); + } + } + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledge_SearchDocumentChunks_sync] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledgesettings/getdocument/SyncGetDocument.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledgesettings/getdocument/SyncGetDocument.java new file mode 100644 index 000000000000..1bda12467280 --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/developerknowledgesettings/getdocument/SyncGetDocument.java @@ -0,0 +1,57 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledgeSettings_GetDocument_sync] +import com.google.developers.knowledge.v1.DeveloperKnowledgeSettings; +import java.time.Duration; + +public class SyncGetDocument { + + public static void main(String[] args) throws Exception { + syncGetDocument(); + } + + public static void syncGetDocument() 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 + DeveloperKnowledgeSettings.Builder developerKnowledgeSettingsBuilder = + DeveloperKnowledgeSettings.newBuilder(); + developerKnowledgeSettingsBuilder + .getDocumentSettings() + .setRetrySettings( + developerKnowledgeSettingsBuilder + .getDocumentSettings() + .getRetrySettings() + .toBuilder() + .setInitialRetryDelayDuration(Duration.ofSeconds(1)) + .setInitialRpcTimeoutDuration(Duration.ofSeconds(5)) + .setMaxAttempts(5) + .setMaxRetryDelayDuration(Duration.ofSeconds(30)) + .setMaxRpcTimeoutDuration(Duration.ofSeconds(60)) + .setRetryDelayMultiplier(1.3) + .setRpcTimeoutMultiplier(1.5) + .setTotalTimeoutDuration(Duration.ofSeconds(300)) + .build()); + DeveloperKnowledgeSettings developerKnowledgeSettings = + developerKnowledgeSettingsBuilder.build(); + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledgeSettings_GetDocument_sync] diff --git a/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/stub/developerknowledgestubsettings/getdocument/SyncGetDocument.java b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/stub/developerknowledgestubsettings/getdocument/SyncGetDocument.java new file mode 100644 index 000000000000..f5bdf91adcdc --- /dev/null +++ b/java-developerknowledge/samples/snippets/generated/com/google/developers/knowledge/v1/stub/developerknowledgestubsettings/getdocument/SyncGetDocument.java @@ -0,0 +1,57 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.developers.knowledge.v1.stub.samples; + +// [START developerknowledge_v1_generated_DeveloperKnowledgeStubSettings_GetDocument_sync] +import com.google.developers.knowledge.v1.stub.DeveloperKnowledgeStubSettings; +import java.time.Duration; + +public class SyncGetDocument { + + public static void main(String[] args) throws Exception { + syncGetDocument(); + } + + public static void syncGetDocument() 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 + DeveloperKnowledgeStubSettings.Builder developerKnowledgeSettingsBuilder = + DeveloperKnowledgeStubSettings.newBuilder(); + developerKnowledgeSettingsBuilder + .getDocumentSettings() + .setRetrySettings( + developerKnowledgeSettingsBuilder + .getDocumentSettings() + .getRetrySettings() + .toBuilder() + .setInitialRetryDelayDuration(Duration.ofSeconds(1)) + .setInitialRpcTimeoutDuration(Duration.ofSeconds(5)) + .setMaxAttempts(5) + .setMaxRetryDelayDuration(Duration.ofSeconds(30)) + .setMaxRpcTimeoutDuration(Duration.ofSeconds(60)) + .setRetryDelayMultiplier(1.3) + .setRpcTimeoutMultiplier(1.5) + .setTotalTimeoutDuration(Duration.ofSeconds(300)) + .build()); + DeveloperKnowledgeStubSettings developerKnowledgeSettings = + developerKnowledgeSettingsBuilder.build(); + } +} +// [END developerknowledge_v1_generated_DeveloperKnowledgeStubSettings_GetDocument_sync] diff --git a/pom.xml b/pom.xml index a1613b4e05a7..354481ca697d 100644 --- a/pom.xml +++ b/pom.xml @@ -99,6 +99,7 @@ java-datastream java-deploy java-developerconnect + java-developerknowledge java-devicestreaming java-dialogflow java-dialogflow-cx diff --git a/versions.txt b/versions.txt index 639b83859b81..c7c39fe9f034 100644 --- a/versions.txt +++ b/versions.txt @@ -1053,3 +1053,6 @@ grpc-google-cloud-firestore-v1:3.42.0:3.42.1-SNAPSHOT proto-google-cloud-firestore-admin-v1:3.42.0:3.42.1-SNAPSHOT proto-google-cloud-firestore-v1:3.42.0:3.42.1-SNAPSHOT proto-google-cloud-firestore-bundle-v1:3.42.0:3.42.1-SNAPSHOT +google-cloud-developer-knowledge:0.0.0:0.0.1-SNAPSHOT +proto-google-cloud-developer-knowledge-v1:0.0.0:0.0.1-SNAPSHOT +grpc-google-cloud-developer-knowledge-v1:0.0.0:0.0.1-SNAPSHOT