diff --git a/packages/google-cloud-domains/.OwlBot.yaml b/packages/google-cloud-domains/.OwlBot.yaml index a73902051091..a2d60cd4b172 100644 --- a/packages/google-cloud-domains/.OwlBot.yaml +++ b/packages/google-cloud-domains/.OwlBot.yaml @@ -1,10 +1,10 @@ -# Copyright 2021 Google LLC +# Copyright 2025 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 +# 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, @@ -12,9 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -deep-remove-regex: - - /owl-bot-staging deep-copy-regex: - - source: /google/cloud/domains/google-domains-nodejs - dest: /owl-bot-staging/google-cloud-domains -api-name: domains + - source: /google/cloud/domains/google-cloud-domains-nodejs + dest: /owl-bot-staging/google-cloud-domains + +api-name: domains \ No newline at end of file diff --git a/packages/google-cloud-domains/.jsdoc.js b/packages/google-cloud-domains/.jsdoc.js index e481373a1d64..18cd1a364a11 100644 --- a/packages/google-cloud-domains/.jsdoc.js +++ b/packages/google-cloud-domains/.jsdoc.js @@ -40,7 +40,7 @@ module.exports = { includePattern: '\\.js$' }, templates: { - copyright: 'Copyright 2025 Google LLC', + copyright: 'Copyright 2026 Google LLC', includeDate: false, sourceFiles: false, systemName: '@google-cloud/domains', diff --git a/packages/google-cloud-domains/.nycrc b/packages/google-cloud-domains/.nycrc index b18d5472b62b..81a95fc94b00 100644 --- a/packages/google-cloud-domains/.nycrc +++ b/packages/google-cloud-domains/.nycrc @@ -21,4 +21,4 @@ ], "exclude-after-remap": false, "all": true -} +} \ No newline at end of file diff --git a/packages/google-cloud-domains/README.md b/packages/google-cloud-domains/README.md index f3463a238ec7..5afec3d01030 100644 --- a/packages/google-cloud-domains/README.md +++ b/packages/google-cloud-domains/README.md @@ -1,24 +1,25 @@ [//]: # "This README.md file is auto-generated, all changes to this file will be lost." -[//]: # "To regenerate it, use `python -m synthtool`." +[//]: # "The comments you see below are used to generate those parts of the template in later states." Google Cloud Platform logo -# [Cloud Domains: Node.js Client](https://github.com/googleapis/google-cloud-node/tree/main/packages/google-cloud-domains) - -[![release level](https://img.shields.io/badge/release%20level-stable-brightgreen.svg?style=flat)](https://cloud.google.com/terms/launch-stages) -[![npm version](https://img.shields.io/npm/v/@google-cloud/domains.svg)](https://www.npmjs.org/package/@google-cloud/domains) - +# [Cloud Domains API: Nodejs Client][homepage] +This library is considered to be **stable**. The code surface will not change in backwards-incompatible ways +unless absolutely necessary (e.g. because of critical security issues) or with +an extensive deprecation period. Issues and requests against **stable** libraries +are addressed with the highest priority +[![npm version](https://img.shields.io/npm/v/@google-cloud/domains.svg)](https://www.npmjs.org/package/@google-cloud/domains) -Domains client for Node.js +Cloud Domains API client for Node.js +[//]: # "partials.introduction" A comprehensive list of changes in each version may be found in -[the CHANGELOG](https://github.com/googleapis/google-cloud-node/tree/main/packages/google-cloud-domains/CHANGELOG.md). +[the CHANGELOG][homepage_changelog]. + +* [Cloud Domains API Nodejs Client API Reference](https://cloud.google.com/nodejs/docs/reference/domains/latest) -* [Cloud Domains Node.js Client API Reference][client-docs] -* [Cloud Domains Documentation][product-docs] -* [github.com/googleapis/google-cloud-node/packages/google-cloud-domains](https://github.com/googleapis/google-cloud-node/tree/main/packages/google-cloud-domains) Read more about the client libraries for Cloud APIs, including the older Google APIs Client Libraries, in [Client Libraries Explained][explained]. @@ -27,117 +28,82 @@ Google APIs Client Libraries, in [Client Libraries Explained][explained]. **Table of contents:** - * [Quickstart](#quickstart) * [Before you begin](#before-you-begin) * [Installing the client library](#installing-the-client-library) - * [Using the client library](#using-the-client-library) -* [Samples](#samples) + * [Versioning](#versioning) * [Contributing](#contributing) * [License](#license) ## Quickstart - ### Before you begin 1. [Select or create a Cloud Platform project][projects]. 1. [Enable billing for your project][billing]. -1. [Enable the Cloud Domains API][enable_api]. +1. [Enable the Cloud Domains API API][enable_api]. 1. [Set up authentication][auth] so you can access the API from your local workstation. - ### Installing the client library ```bash npm install @google-cloud/domains ``` - -### Using the client library - -```javascript -// Imports the Google Cloud client library - -const {DomainsClient} = require('@google-cloud/domains'); - -// TODO(developer): replace with your preferred values. -// const projectId = 'my-project' -// const location = 'my-location' - -// Creates a client -const client = new DomainsClient(); - -//TODO(library generator): write the actual function you will be testing -async function listRegistrations() { - const [registrations] = await client.listRegistrations({ - parent: `projects/${projectId}/locations/${location}`, - }); - console.info(registrations); -} -listRegistrations(); - -``` - - +[//]: # "partials.body" ## Samples -Samples are in the [`samples/`](https://github.com/googleapis/google-cloud-node/tree/main/packages/google-cloud-domains/samples) directory. Each sample's `README.md` has instructions for running its sample. - -| Sample | Source Code | Try it | -| --------------------------- | --------------------------------- | ------ | -| Domains.configure_contact_settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.configure_contact_settings.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.configure_contact_settings.js,packages/google-cloud-domains/samples/README.md) | -| Domains.configure_dns_settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.configure_dns_settings.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.configure_dns_settings.js,packages/google-cloud-domains/samples/README.md) | -| Domains.configure_management_settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.configure_management_settings.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.configure_management_settings.js,packages/google-cloud-domains/samples/README.md) | -| Domains.delete_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.delete_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.delete_registration.js,packages/google-cloud-domains/samples/README.md) | -| Domains.export_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.export_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.export_registration.js,packages/google-cloud-domains/samples/README.md) | -| Domains.get_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.get_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.get_registration.js,packages/google-cloud-domains/samples/README.md) | -| Domains.list_registrations | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.list_registrations.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.list_registrations.js,packages/google-cloud-domains/samples/README.md) | -| Domains.register_domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.register_domain.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.register_domain.js,packages/google-cloud-domains/samples/README.md) | -| Domains.reset_authorization_code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.reset_authorization_code.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.reset_authorization_code.js,packages/google-cloud-domains/samples/README.md) | -| Domains.retrieve_authorization_code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.retrieve_authorization_code.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.retrieve_authorization_code.js,packages/google-cloud-domains/samples/README.md) | -| Domains.retrieve_register_parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.retrieve_register_parameters.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.retrieve_register_parameters.js,packages/google-cloud-domains/samples/README.md) | -| Domains.retrieve_transfer_parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.retrieve_transfer_parameters.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.retrieve_transfer_parameters.js,packages/google-cloud-domains/samples/README.md) | -| Domains.search_domains | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.search_domains.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.search_domains.js,packages/google-cloud-domains/samples/README.md) | -| Domains.transfer_domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.transfer_domain.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.transfer_domain.js,packages/google-cloud-domains/samples/README.md) | -| Domains.update_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1/domains.update_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1/domains.update_registration.js,packages/google-cloud-domains/samples/README.md) | -| Domains.configure_contact_settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.configure_contact_settings.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.configure_contact_settings.js,packages/google-cloud-domains/samples/README.md) | -| Domains.configure_dns_settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.configure_dns_settings.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.configure_dns_settings.js,packages/google-cloud-domains/samples/README.md) | -| Domains.configure_management_settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.configure_management_settings.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.configure_management_settings.js,packages/google-cloud-domains/samples/README.md) | -| Domains.delete_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.delete_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.delete_registration.js,packages/google-cloud-domains/samples/README.md) | -| Domains.export_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.export_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.export_registration.js,packages/google-cloud-domains/samples/README.md) | -| Domains.get_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.get_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.get_registration.js,packages/google-cloud-domains/samples/README.md) | -| Domains.list_registrations | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.list_registrations.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.list_registrations.js,packages/google-cloud-domains/samples/README.md) | -| Domains.register_domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.register_domain.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.register_domain.js,packages/google-cloud-domains/samples/README.md) | -| Domains.reset_authorization_code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.reset_authorization_code.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.reset_authorization_code.js,packages/google-cloud-domains/samples/README.md) | -| Domains.retrieve_authorization_code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.retrieve_authorization_code.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.retrieve_authorization_code.js,packages/google-cloud-domains/samples/README.md) | -| Domains.retrieve_register_parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.retrieve_register_parameters.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.retrieve_register_parameters.js,packages/google-cloud-domains/samples/README.md) | -| Domains.retrieve_transfer_parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.retrieve_transfer_parameters.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.retrieve_transfer_parameters.js,packages/google-cloud-domains/samples/README.md) | -| Domains.search_domains | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.search_domains.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.search_domains.js,packages/google-cloud-domains/samples/README.md) | -| Domains.transfer_domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.transfer_domain.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.transfer_domain.js,packages/google-cloud-domains/samples/README.md) | -| Domains.update_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1alpha2/domains.update_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1alpha2/domains.update_registration.js,packages/google-cloud-domains/samples/README.md) | -| Domains.configure_contact_settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.configure_contact_settings.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.configure_contact_settings.js,packages/google-cloud-domains/samples/README.md) | -| Domains.configure_dns_settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.configure_dns_settings.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.configure_dns_settings.js,packages/google-cloud-domains/samples/README.md) | -| Domains.configure_management_settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.configure_management_settings.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.configure_management_settings.js,packages/google-cloud-domains/samples/README.md) | -| Domains.delete_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.delete_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.delete_registration.js,packages/google-cloud-domains/samples/README.md) | -| Domains.export_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.export_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.export_registration.js,packages/google-cloud-domains/samples/README.md) | -| Domains.get_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.get_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.get_registration.js,packages/google-cloud-domains/samples/README.md) | -| Domains.list_registrations | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.list_registrations.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.list_registrations.js,packages/google-cloud-domains/samples/README.md) | -| Domains.register_domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.register_domain.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.register_domain.js,packages/google-cloud-domains/samples/README.md) | -| Domains.reset_authorization_code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.reset_authorization_code.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.reset_authorization_code.js,packages/google-cloud-domains/samples/README.md) | -| Domains.retrieve_authorization_code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.retrieve_authorization_code.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.retrieve_authorization_code.js,packages/google-cloud-domains/samples/README.md) | -| Domains.retrieve_register_parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.retrieve_register_parameters.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.retrieve_register_parameters.js,packages/google-cloud-domains/samples/README.md) | -| Domains.retrieve_transfer_parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.retrieve_transfer_parameters.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.retrieve_transfer_parameters.js,packages/google-cloud-domains/samples/README.md) | -| Domains.search_domains | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.search_domains.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.search_domains.js,packages/google-cloud-domains/samples/README.md) | -| Domains.transfer_domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.transfer_domain.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.transfer_domain.js,packages/google-cloud-domains/samples/README.md) | -| Domains.update_registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/generated/v1beta1/domains.update_registration.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/generated/v1beta1/domains.update_registration.js,packages/google-cloud-domains/samples/README.md) | -| Quickstart | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-cloud-domains/samples/quickstart.js,packages/google-cloud-domains/samples/README.md) | - - - -The [Cloud Domains Node.js Client API Reference][client-docs] documentation -also contains samples. +Samples are in the [`samples/`][homepage_samples] directory. Each sample's `README.md` has instructions for running its sample. + +| Sample | Source Code | +| --------------------------- | --------------------------------- | +| configure contact settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.configure_contact_settings.js) | +| configure dns settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.configure_dns_settings.js) | +| configure management settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.configure_management_settings.js) | +| delete registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.delete_registration.js) | +| export registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.export_registration.js) | +| get registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.get_registration.js) | +| list registrations | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.list_registrations.js) | +| register domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.register_domain.js) | +| reset authorization code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.reset_authorization_code.js) | +| retrieve authorization code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.retrieve_authorization_code.js) | +| retrieve register parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.retrieve_register_parameters.js) | +| retrieve transfer parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.retrieve_transfer_parameters.js) | +| search domains | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.search_domains.js) | +| transfer domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.transfer_domain.js) | +| update registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1/domains.update_registration.js) | +| configure contact settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.configure_contact_settings.js) | +| configure dns settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.configure_dns_settings.js) | +| configure management settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.configure_management_settings.js) | +| delete registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.delete_registration.js) | +| export registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.export_registration.js) | +| get registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.get_registration.js) | +| list registrations | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.list_registrations.js) | +| register domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.register_domain.js) | +| reset authorization code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.reset_authorization_code.js) | +| retrieve authorization code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.retrieve_authorization_code.js) | +| retrieve register parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.retrieve_register_parameters.js) | +| retrieve transfer parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.retrieve_transfer_parameters.js) | +| search domains | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.search_domains.js) | +| transfer domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.transfer_domain.js) | +| update registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1alpha2/domains.update_registration.js) | +| configure contact settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.configure_contact_settings.js) | +| configure dns settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.configure_dns_settings.js) | +| configure management settings | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.configure_management_settings.js) | +| delete registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.delete_registration.js) | +| export registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.export_registration.js) | +| get registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.get_registration.js) | +| list registrations | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.list_registrations.js) | +| register domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.register_domain.js) | +| reset authorization code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.reset_authorization_code.js) | +| retrieve authorization code | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.retrieve_authorization_code.js) | +| retrieve register parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.retrieve_register_parameters.js) | +| retrieve transfer parameters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.retrieve_transfer_parameters.js) | +| search domains | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.search_domains.js) | +| transfer domain | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.transfer_domain.js) | +| update registration | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-domains/samples/generated/v1beta1/domains.update_registration.js) | + ## Supported Node.js Versions @@ -164,18 +130,6 @@ for versions compatible with Node.js 8. This library follows [Semantic Versioning](http://semver.org/). - - -This library is considered to be **stable**. The code surface will not change in backwards-incompatible ways -unless absolutely necessary (e.g. because of critical security issues) or with -an extensive deprecation period. Issues and requests against **stable** libraries -are addressed with the highest priority. - - - - - - More Information: [Google Cloud Platform Launch Stages][launch_stages] [launch_stages]: https://cloud.google.com/terms/launch-stages @@ -184,11 +138,9 @@ More Information: [Google Cloud Platform Launch Stages][launch_stages] Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/google-cloud-node/blob/main/CONTRIBUTING.md). -Please note that this `README.md`, the `samples/README.md`, +Please note that this `README.md` and a variety of configuration files in this repository (including `.nycrc` and `tsconfig.json`) -are generated from a central template. To edit one of these files, make an edit -to its templates in -[directory](https://github.com/googleapis/synthtool). +are generated from a central template. ## License @@ -196,13 +148,11 @@ Apache Version 2.0 See [LICENSE](https://github.com/googleapis/google-cloud-node/blob/main/LICENSE) -[client-docs]: https://cloud.google.com/nodejs/docs/reference/domains/latest -[product-docs]: https://cloud.google.com/domains/ [shell_img]: https://gstatic.com/cloudssh/images/open-btn.png [projects]: https://console.cloud.google.com/project [billing]: https://support.google.com/cloud/answer/6293499#enable-billing [enable_api]: https://console.cloud.google.com/flows/enableapi?apiid=domains.googleapis.com [auth]: https://cloud.google.com/docs/authentication/external/set-up-adc-local - - -[//]: # "partials.introduction" \ No newline at end of file +[homepage_samples]: https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/samples +[homepage_changelog]: https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains/CHANGELOG.md +[homepage]: https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-domains diff --git a/packages/google-cloud-domains/protos/protos.js b/packages/google-cloud-domains/protos/protos.js index 4ef47c02c556..59da8e885795 100644 --- a/packages/google-cloud-domains/protos/protos.js +++ b/packages/google-cloud-domains/protos/protos.js @@ -630,7 +630,7 @@ this.supportedPrivacy = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -814,9 +814,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Registration.decode = function decode(reader, length, error) { + Registration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.Registration(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -832,11 +836,11 @@ break; } case 3: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -870,27 +874,29 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } case 10: { - message.managementSettings = $root.google.cloud.domains.v1.ManagementSettings.decode(reader, reader.uint32()); + message.managementSettings = $root.google.cloud.domains.v1.ManagementSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { - message.dnsSettings = $root.google.cloud.domains.v1.DnsSettings.decode(reader, reader.uint32()); + message.dnsSettings = $root.google.cloud.domains.v1.DnsSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { - message.contactSettings = $root.google.cloud.domains.v1.ContactSettings.decode(reader, reader.uint32()); + message.contactSettings = $root.google.cloud.domains.v1.ContactSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.pendingContactSettings = $root.google.cloud.domains.v1.ContactSettings.decode(reader, reader.uint32()); + message.pendingContactSettings = $root.google.cloud.domains.v1.ContactSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { @@ -905,7 +911,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -936,9 +942,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Registration.verify = function verify(message) { + Registration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -946,12 +956,12 @@ if (!$util.isString(message.domainName)) return "domainName: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -991,22 +1001,22 @@ return "labels: string{k:string} expected"; } if (message.managementSettings != null && message.hasOwnProperty("managementSettings")) { - var error = $root.google.cloud.domains.v1.ManagementSettings.verify(message.managementSettings); + var error = $root.google.cloud.domains.v1.ManagementSettings.verify(message.managementSettings, long + 1); if (error) return "managementSettings." + error; } if (message.dnsSettings != null && message.hasOwnProperty("dnsSettings")) { - var error = $root.google.cloud.domains.v1.DnsSettings.verify(message.dnsSettings); + var error = $root.google.cloud.domains.v1.DnsSettings.verify(message.dnsSettings, long + 1); if (error) return "dnsSettings." + error; } if (message.contactSettings != null && message.hasOwnProperty("contactSettings")) { - var error = $root.google.cloud.domains.v1.ContactSettings.verify(message.contactSettings); + var error = $root.google.cloud.domains.v1.ContactSettings.verify(message.contactSettings, long + 1); if (error) return "contactSettings." + error; } if (message.pendingContactSettings != null && message.hasOwnProperty("pendingContactSettings")) { - var error = $root.google.cloud.domains.v1.ContactSettings.verify(message.pendingContactSettings); + var error = $root.google.cloud.domains.v1.ContactSettings.verify(message.pendingContactSettings, long + 1); if (error) return "pendingContactSettings." + error; } @@ -1035,9 +1045,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.Registration} Registration */ - Registration.fromObject = function fromObject(object) { + Registration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.Registration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.Registration(); if (object.name != null) message.name = String(object.name); @@ -1046,12 +1060,12 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.domains.v1.Registration.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.domains.v1.Registration.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } switch (object.state) { default: @@ -1122,28 +1136,31 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.domains.v1.Registration.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.managementSettings != null) { if (typeof object.managementSettings !== "object") throw TypeError(".google.cloud.domains.v1.Registration.managementSettings: object expected"); - message.managementSettings = $root.google.cloud.domains.v1.ManagementSettings.fromObject(object.managementSettings); + message.managementSettings = $root.google.cloud.domains.v1.ManagementSettings.fromObject(object.managementSettings, long + 1); } if (object.dnsSettings != null) { if (typeof object.dnsSettings !== "object") throw TypeError(".google.cloud.domains.v1.Registration.dnsSettings: object expected"); - message.dnsSettings = $root.google.cloud.domains.v1.DnsSettings.fromObject(object.dnsSettings); + message.dnsSettings = $root.google.cloud.domains.v1.DnsSettings.fromObject(object.dnsSettings, long + 1); } if (object.contactSettings != null) { if (typeof object.contactSettings !== "object") throw TypeError(".google.cloud.domains.v1.Registration.contactSettings: object expected"); - message.contactSettings = $root.google.cloud.domains.v1.ContactSettings.fromObject(object.contactSettings); + message.contactSettings = $root.google.cloud.domains.v1.ContactSettings.fromObject(object.contactSettings, long + 1); } if (object.pendingContactSettings != null) { if (typeof object.pendingContactSettings !== "object") throw TypeError(".google.cloud.domains.v1.Registration.pendingContactSettings: object expected"); - message.pendingContactSettings = $root.google.cloud.domains.v1.ContactSettings.fromObject(object.pendingContactSettings); + message.pendingContactSettings = $root.google.cloud.domains.v1.ContactSettings.fromObject(object.pendingContactSettings, long + 1); } if (object.supportedPrivacy) { if (!Array.isArray(object.supportedPrivacy)) @@ -1225,8 +1242,11 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.managementSettings != null && message.hasOwnProperty("managementSettings")) object.managementSettings = $root.google.cloud.domains.v1.ManagementSettings.toObject(message.managementSettings, options); @@ -1336,7 +1356,7 @@ function ManagementSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1411,9 +1431,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ManagementSettings.decode = function decode(reader, length, error) { + ManagementSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.ManagementSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1429,7 +1453,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1460,9 +1484,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ManagementSettings.verify = function verify(message) { + ManagementSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.renewalMethod != null && message.hasOwnProperty("renewalMethod")) switch (message.renewalMethod) { default: @@ -1492,9 +1520,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.ManagementSettings} ManagementSettings */ - ManagementSettings.fromObject = function fromObject(object) { + ManagementSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.ManagementSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.ManagementSettings(); switch (object.renewalMethod) { default: @@ -1631,7 +1663,7 @@ this.glueRecords = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1731,9 +1763,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DnsSettings.decode = function decode(reader, length, error) { + DnsSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.DnsSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1741,21 +1777,21 @@ break; switch (tag >>> 3) { case 1: { - message.customDns = $root.google.cloud.domains.v1.DnsSettings.CustomDns.decode(reader, reader.uint32()); + message.customDns = $root.google.cloud.domains.v1.DnsSettings.CustomDns.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.googleDomainsDns = $root.google.cloud.domains.v1.DnsSettings.GoogleDomainsDns.decode(reader, reader.uint32()); + message.googleDomainsDns = $root.google.cloud.domains.v1.DnsSettings.GoogleDomainsDns.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.glueRecords && message.glueRecords.length)) message.glueRecords = []; - message.glueRecords.push($root.google.cloud.domains.v1.DnsSettings.GlueRecord.decode(reader, reader.uint32())); + message.glueRecords.push($root.google.cloud.domains.v1.DnsSettings.GlueRecord.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1786,14 +1822,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DnsSettings.verify = function verify(message) { + DnsSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.customDns != null && message.hasOwnProperty("customDns")) { properties.dnsProvider = 1; { - var error = $root.google.cloud.domains.v1.DnsSettings.CustomDns.verify(message.customDns); + var error = $root.google.cloud.domains.v1.DnsSettings.CustomDns.verify(message.customDns, long + 1); if (error) return "customDns." + error; } @@ -1803,7 +1843,7 @@ return "dnsProvider: multiple values"; properties.dnsProvider = 1; { - var error = $root.google.cloud.domains.v1.DnsSettings.GoogleDomainsDns.verify(message.googleDomainsDns); + var error = $root.google.cloud.domains.v1.DnsSettings.GoogleDomainsDns.verify(message.googleDomainsDns, long + 1); if (error) return "googleDomainsDns." + error; } @@ -1812,7 +1852,7 @@ if (!Array.isArray(message.glueRecords)) return "glueRecords: array expected"; for (var i = 0; i < message.glueRecords.length; ++i) { - var error = $root.google.cloud.domains.v1.DnsSettings.GlueRecord.verify(message.glueRecords[i]); + var error = $root.google.cloud.domains.v1.DnsSettings.GlueRecord.verify(message.glueRecords[i], long + 1); if (error) return "glueRecords." + error; } @@ -1828,19 +1868,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.DnsSettings} DnsSettings */ - DnsSettings.fromObject = function fromObject(object) { + DnsSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.DnsSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.DnsSettings(); if (object.customDns != null) { if (typeof object.customDns !== "object") throw TypeError(".google.cloud.domains.v1.DnsSettings.customDns: object expected"); - message.customDns = $root.google.cloud.domains.v1.DnsSettings.CustomDns.fromObject(object.customDns); + message.customDns = $root.google.cloud.domains.v1.DnsSettings.CustomDns.fromObject(object.customDns, long + 1); } if (object.googleDomainsDns != null) { if (typeof object.googleDomainsDns !== "object") throw TypeError(".google.cloud.domains.v1.DnsSettings.googleDomainsDns: object expected"); - message.googleDomainsDns = $root.google.cloud.domains.v1.DnsSettings.GoogleDomainsDns.fromObject(object.googleDomainsDns); + message.googleDomainsDns = $root.google.cloud.domains.v1.DnsSettings.GoogleDomainsDns.fromObject(object.googleDomainsDns, long + 1); } if (object.glueRecords) { if (!Array.isArray(object.glueRecords)) @@ -1849,7 +1893,7 @@ for (var i = 0; i < object.glueRecords.length; ++i) { if (typeof object.glueRecords[i] !== "object") throw TypeError(".google.cloud.domains.v1.DnsSettings.glueRecords: object expected"); - message.glueRecords[i] = $root.google.cloud.domains.v1.DnsSettings.GlueRecord.fromObject(object.glueRecords[i]); + message.glueRecords[i] = $root.google.cloud.domains.v1.DnsSettings.GlueRecord.fromObject(object.glueRecords[i], long + 1); } } return message; @@ -1937,7 +1981,7 @@ this.dsRecords = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2014,9 +2058,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomDns.decode = function decode(reader, length, error) { + CustomDns.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.DnsSettings.CustomDns(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2032,11 +2080,11 @@ case 2: { if (!(message.dsRecords && message.dsRecords.length)) message.dsRecords = []; - message.dsRecords.push($root.google.cloud.domains.v1.DnsSettings.DsRecord.decode(reader, reader.uint32())); + message.dsRecords.push($root.google.cloud.domains.v1.DnsSettings.DsRecord.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2067,9 +2115,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomDns.verify = function verify(message) { + CustomDns.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.nameServers != null && message.hasOwnProperty("nameServers")) { if (!Array.isArray(message.nameServers)) return "nameServers: array expected"; @@ -2081,7 +2133,7 @@ if (!Array.isArray(message.dsRecords)) return "dsRecords: array expected"; for (var i = 0; i < message.dsRecords.length; ++i) { - var error = $root.google.cloud.domains.v1.DnsSettings.DsRecord.verify(message.dsRecords[i]); + var error = $root.google.cloud.domains.v1.DnsSettings.DsRecord.verify(message.dsRecords[i], long + 1); if (error) return "dsRecords." + error; } @@ -2097,9 +2149,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.DnsSettings.CustomDns} CustomDns */ - CustomDns.fromObject = function fromObject(object) { + CustomDns.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.DnsSettings.CustomDns) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.DnsSettings.CustomDns(); if (object.nameServers) { if (!Array.isArray(object.nameServers)) @@ -2115,7 +2171,7 @@ for (var i = 0; i < object.dsRecords.length; ++i) { if (typeof object.dsRecords[i] !== "object") throw TypeError(".google.cloud.domains.v1.DnsSettings.CustomDns.dsRecords: object expected"); - message.dsRecords[i] = $root.google.cloud.domains.v1.DnsSettings.DsRecord.fromObject(object.dsRecords[i]); + message.dsRecords[i] = $root.google.cloud.domains.v1.DnsSettings.DsRecord.fromObject(object.dsRecords[i], long + 1); } } return message; @@ -2204,7 +2260,7 @@ this.dsRecords = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2291,9 +2347,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GoogleDomainsDns.decode = function decode(reader, length, error) { + GoogleDomainsDns.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.DnsSettings.GoogleDomainsDns(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2313,11 +2373,11 @@ case 3: { if (!(message.dsRecords && message.dsRecords.length)) message.dsRecords = []; - message.dsRecords.push($root.google.cloud.domains.v1.DnsSettings.DsRecord.decode(reader, reader.uint32())); + message.dsRecords.push($root.google.cloud.domains.v1.DnsSettings.DsRecord.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2348,9 +2408,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GoogleDomainsDns.verify = function verify(message) { + GoogleDomainsDns.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.nameServers != null && message.hasOwnProperty("nameServers")) { if (!Array.isArray(message.nameServers)) return "nameServers: array expected"; @@ -2371,7 +2435,7 @@ if (!Array.isArray(message.dsRecords)) return "dsRecords: array expected"; for (var i = 0; i < message.dsRecords.length; ++i) { - var error = $root.google.cloud.domains.v1.DnsSettings.DsRecord.verify(message.dsRecords[i]); + var error = $root.google.cloud.domains.v1.DnsSettings.DsRecord.verify(message.dsRecords[i], long + 1); if (error) return "dsRecords." + error; } @@ -2387,9 +2451,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.DnsSettings.GoogleDomainsDns} GoogleDomainsDns */ - GoogleDomainsDns.fromObject = function fromObject(object) { + GoogleDomainsDns.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.DnsSettings.GoogleDomainsDns) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.DnsSettings.GoogleDomainsDns(); if (object.nameServers) { if (!Array.isArray(object.nameServers)) @@ -2425,7 +2493,7 @@ for (var i = 0; i < object.dsRecords.length; ++i) { if (typeof object.dsRecords[i] !== "object") throw TypeError(".google.cloud.domains.v1.DnsSettings.GoogleDomainsDns.dsRecords: object expected"); - message.dsRecords[i] = $root.google.cloud.domains.v1.DnsSettings.DsRecord.fromObject(object.dsRecords[i]); + message.dsRecords[i] = $root.google.cloud.domains.v1.DnsSettings.DsRecord.fromObject(object.dsRecords[i], long + 1); } } return message; @@ -2517,7 +2585,7 @@ function DsRecord(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2612,9 +2680,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DsRecord.decode = function decode(reader, length, error) { + DsRecord.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.DnsSettings.DsRecord(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2638,7 +2710,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2669,9 +2741,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DsRecord.verify = function verify(message) { + DsRecord.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.keyTag != null && message.hasOwnProperty("keyTag")) if (!$util.isInteger(message.keyTag)) return "keyTag: integer expected"; @@ -2724,9 +2800,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.DnsSettings.DsRecord} DsRecord */ - DsRecord.fromObject = function fromObject(object) { + DsRecord.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.DnsSettings.DsRecord) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.DnsSettings.DsRecord(); if (object.keyTag != null) message.keyTag = object.keyTag | 0; @@ -2992,7 +3072,7 @@ this.ipv6Addresses = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3079,9 +3159,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GlueRecord.decode = function decode(reader, length, error) { + GlueRecord.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.DnsSettings.GlueRecord(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3105,7 +3189,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3136,9 +3220,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GlueRecord.verify = function verify(message) { + GlueRecord.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.hostName != null && message.hasOwnProperty("hostName")) if (!$util.isString(message.hostName)) return "hostName: string expected"; @@ -3167,9 +3255,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.DnsSettings.GlueRecord} GlueRecord */ - GlueRecord.fromObject = function fromObject(object) { + GlueRecord.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.DnsSettings.GlueRecord) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.DnsSettings.GlueRecord(); if (object.hostName != null) message.hostName = String(object.hostName); @@ -3295,7 +3387,7 @@ function ContactSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3390,9 +3482,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ContactSettings.decode = function decode(reader, length, error) { + ContactSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.ContactSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3404,19 +3500,19 @@ break; } case 2: { - message.registrantContact = $root.google.cloud.domains.v1.ContactSettings.Contact.decode(reader, reader.uint32()); + message.registrantContact = $root.google.cloud.domains.v1.ContactSettings.Contact.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.adminContact = $root.google.cloud.domains.v1.ContactSettings.Contact.decode(reader, reader.uint32()); + message.adminContact = $root.google.cloud.domains.v1.ContactSettings.Contact.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.technicalContact = $root.google.cloud.domains.v1.ContactSettings.Contact.decode(reader, reader.uint32()); + message.technicalContact = $root.google.cloud.domains.v1.ContactSettings.Contact.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3447,9 +3543,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ContactSettings.verify = function verify(message) { + ContactSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.privacy != null && message.hasOwnProperty("privacy")) switch (message.privacy) { default: @@ -3461,17 +3561,17 @@ break; } if (message.registrantContact != null && message.hasOwnProperty("registrantContact")) { - var error = $root.google.cloud.domains.v1.ContactSettings.Contact.verify(message.registrantContact); + var error = $root.google.cloud.domains.v1.ContactSettings.Contact.verify(message.registrantContact, long + 1); if (error) return "registrantContact." + error; } if (message.adminContact != null && message.hasOwnProperty("adminContact")) { - var error = $root.google.cloud.domains.v1.ContactSettings.Contact.verify(message.adminContact); + var error = $root.google.cloud.domains.v1.ContactSettings.Contact.verify(message.adminContact, long + 1); if (error) return "adminContact." + error; } if (message.technicalContact != null && message.hasOwnProperty("technicalContact")) { - var error = $root.google.cloud.domains.v1.ContactSettings.Contact.verify(message.technicalContact); + var error = $root.google.cloud.domains.v1.ContactSettings.Contact.verify(message.technicalContact, long + 1); if (error) return "technicalContact." + error; } @@ -3486,9 +3586,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.ContactSettings} ContactSettings */ - ContactSettings.fromObject = function fromObject(object) { + ContactSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.ContactSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.ContactSettings(); switch (object.privacy) { default: @@ -3517,17 +3621,17 @@ if (object.registrantContact != null) { if (typeof object.registrantContact !== "object") throw TypeError(".google.cloud.domains.v1.ContactSettings.registrantContact: object expected"); - message.registrantContact = $root.google.cloud.domains.v1.ContactSettings.Contact.fromObject(object.registrantContact); + message.registrantContact = $root.google.cloud.domains.v1.ContactSettings.Contact.fromObject(object.registrantContact, long + 1); } if (object.adminContact != null) { if (typeof object.adminContact !== "object") throw TypeError(".google.cloud.domains.v1.ContactSettings.adminContact: object expected"); - message.adminContact = $root.google.cloud.domains.v1.ContactSettings.Contact.fromObject(object.adminContact); + message.adminContact = $root.google.cloud.domains.v1.ContactSettings.Contact.fromObject(object.adminContact, long + 1); } if (object.technicalContact != null) { if (typeof object.technicalContact !== "object") throw TypeError(".google.cloud.domains.v1.ContactSettings.technicalContact: object expected"); - message.technicalContact = $root.google.cloud.domains.v1.ContactSettings.Contact.fromObject(object.technicalContact); + message.technicalContact = $root.google.cloud.domains.v1.ContactSettings.Contact.fromObject(object.technicalContact, long + 1); } return message; }; @@ -3611,7 +3715,7 @@ function Contact(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3706,9 +3810,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Contact.decode = function decode(reader, length, error) { + Contact.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.ContactSettings.Contact(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3716,7 +3824,7 @@ break; switch (tag >>> 3) { case 1: { - message.postalAddress = $root.google.type.PostalAddress.decode(reader, reader.uint32()); + message.postalAddress = $root.google.type.PostalAddress.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -3732,7 +3840,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3763,11 +3871,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Contact.verify = function verify(message) { + Contact.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.postalAddress != null && message.hasOwnProperty("postalAddress")) { - var error = $root.google.type.PostalAddress.verify(message.postalAddress); + var error = $root.google.type.PostalAddress.verify(message.postalAddress, long + 1); if (error) return "postalAddress." + error; } @@ -3791,14 +3903,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.ContactSettings.Contact} Contact */ - Contact.fromObject = function fromObject(object) { + Contact.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.ContactSettings.Contact) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.ContactSettings.Contact(); if (object.postalAddress != null) { if (typeof object.postalAddress !== "object") throw TypeError(".google.cloud.domains.v1.ContactSettings.Contact.postalAddress: object expected"); - message.postalAddress = $root.google.type.PostalAddress.fromObject(object.postalAddress); + message.postalAddress = $root.google.type.PostalAddress.fromObject(object.postalAddress, long + 1); } if (object.email != null) message.email = String(object.email); @@ -3892,7 +4008,7 @@ function SearchDomainsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3967,9 +4083,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchDomainsRequest.decode = function decode(reader, length, error) { + SearchDomainsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.SearchDomainsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3985,7 +4105,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4016,9 +4136,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchDomainsRequest.verify = function verify(message) { + SearchDomainsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.query != null && message.hasOwnProperty("query")) if (!$util.isString(message.query)) return "query: string expected"; @@ -4036,9 +4160,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.SearchDomainsRequest} SearchDomainsRequest */ - SearchDomainsRequest.fromObject = function fromObject(object) { + SearchDomainsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.SearchDomainsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.SearchDomainsRequest(); if (object.query != null) message.query = String(object.query); @@ -4121,7 +4249,7 @@ this.registerParameters = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4187,9 +4315,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchDomainsResponse.decode = function decode(reader, length, error) { + SearchDomainsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.SearchDomainsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4199,11 +4331,11 @@ case 1: { if (!(message.registerParameters && message.registerParameters.length)) message.registerParameters = []; - message.registerParameters.push($root.google.cloud.domains.v1.RegisterParameters.decode(reader, reader.uint32())); + message.registerParameters.push($root.google.cloud.domains.v1.RegisterParameters.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4234,14 +4366,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchDomainsResponse.verify = function verify(message) { + SearchDomainsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registerParameters != null && message.hasOwnProperty("registerParameters")) { if (!Array.isArray(message.registerParameters)) return "registerParameters: array expected"; for (var i = 0; i < message.registerParameters.length; ++i) { - var error = $root.google.cloud.domains.v1.RegisterParameters.verify(message.registerParameters[i]); + var error = $root.google.cloud.domains.v1.RegisterParameters.verify(message.registerParameters[i], long + 1); if (error) return "registerParameters." + error; } @@ -4257,9 +4393,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.SearchDomainsResponse} SearchDomainsResponse */ - SearchDomainsResponse.fromObject = function fromObject(object) { + SearchDomainsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.SearchDomainsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.SearchDomainsResponse(); if (object.registerParameters) { if (!Array.isArray(object.registerParameters)) @@ -4268,7 +4408,7 @@ for (var i = 0; i < object.registerParameters.length; ++i) { if (typeof object.registerParameters[i] !== "object") throw TypeError(".google.cloud.domains.v1.SearchDomainsResponse.registerParameters: object expected"); - message.registerParameters[i] = $root.google.cloud.domains.v1.RegisterParameters.fromObject(object.registerParameters[i]); + message.registerParameters[i] = $root.google.cloud.domains.v1.RegisterParameters.fromObject(object.registerParameters[i], long + 1); } } return message; @@ -4347,7 +4487,7 @@ function RetrieveRegisterParametersRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4422,9 +4562,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveRegisterParametersRequest.decode = function decode(reader, length, error) { + RetrieveRegisterParametersRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.RetrieveRegisterParametersRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4440,7 +4584,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4471,9 +4615,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveRegisterParametersRequest.verify = function verify(message) { + RetrieveRegisterParametersRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -4491,9 +4639,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.RetrieveRegisterParametersRequest} RetrieveRegisterParametersRequest */ - RetrieveRegisterParametersRequest.fromObject = function fromObject(object) { + RetrieveRegisterParametersRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.RetrieveRegisterParametersRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.RetrieveRegisterParametersRequest(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -4575,7 +4727,7 @@ function RetrieveRegisterParametersResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4640,9 +4792,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveRegisterParametersResponse.decode = function decode(reader, length, error) { + RetrieveRegisterParametersResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.RetrieveRegisterParametersResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4650,11 +4806,11 @@ break; switch (tag >>> 3) { case 1: { - message.registerParameters = $root.google.cloud.domains.v1.RegisterParameters.decode(reader, reader.uint32()); + message.registerParameters = $root.google.cloud.domains.v1.RegisterParameters.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4685,11 +4841,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveRegisterParametersResponse.verify = function verify(message) { + RetrieveRegisterParametersResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registerParameters != null && message.hasOwnProperty("registerParameters")) { - var error = $root.google.cloud.domains.v1.RegisterParameters.verify(message.registerParameters); + var error = $root.google.cloud.domains.v1.RegisterParameters.verify(message.registerParameters, long + 1); if (error) return "registerParameters." + error; } @@ -4704,14 +4864,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.RetrieveRegisterParametersResponse} RetrieveRegisterParametersResponse */ - RetrieveRegisterParametersResponse.fromObject = function fromObject(object) { + RetrieveRegisterParametersResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.RetrieveRegisterParametersResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.RetrieveRegisterParametersResponse(); if (object.registerParameters != null) { if (typeof object.registerParameters !== "object") throw TypeError(".google.cloud.domains.v1.RetrieveRegisterParametersResponse.registerParameters: object expected"); - message.registerParameters = $root.google.cloud.domains.v1.RegisterParameters.fromObject(object.registerParameters); + message.registerParameters = $root.google.cloud.domains.v1.RegisterParameters.fromObject(object.registerParameters, long + 1); } return message; }; @@ -4792,7 +4956,7 @@ this.contactNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4915,9 +5079,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RegisterDomainRequest.decode = function decode(reader, length, error) { + RegisterDomainRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.RegisterDomainRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4929,7 +5097,7 @@ break; } case 2: { - message.registration = $root.google.cloud.domains.v1.Registration.decode(reader, reader.uint32()); + message.registration = $root.google.cloud.domains.v1.Registration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -4955,7 +5123,7 @@ break; } case 5: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -4963,7 +5131,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4994,14 +5162,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RegisterDomainRequest.verify = function verify(message) { + RegisterDomainRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.registration != null && message.hasOwnProperty("registration")) { - var error = $root.google.cloud.domains.v1.Registration.verify(message.registration); + var error = $root.google.cloud.domains.v1.Registration.verify(message.registration, long + 1); if (error) return "registration." + error; } @@ -5030,7 +5202,7 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } @@ -5048,16 +5220,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.RegisterDomainRequest} RegisterDomainRequest */ - RegisterDomainRequest.fromObject = function fromObject(object) { + RegisterDomainRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.RegisterDomainRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.RegisterDomainRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.registration != null) { if (typeof object.registration !== "object") throw TypeError(".google.cloud.domains.v1.RegisterDomainRequest.registration: object expected"); - message.registration = $root.google.cloud.domains.v1.Registration.fromObject(object.registration); + message.registration = $root.google.cloud.domains.v1.Registration.fromObject(object.registration, long + 1); } if (object.domainNotices) { if (!Array.isArray(object.domainNotices)) @@ -5104,7 +5280,7 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1.RegisterDomainRequest.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -5205,7 +5381,7 @@ function RetrieveTransferParametersRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5280,9 +5456,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveTransferParametersRequest.decode = function decode(reader, length, error) { + RetrieveTransferParametersRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.RetrieveTransferParametersRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5298,7 +5478,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5329,9 +5509,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveTransferParametersRequest.verify = function verify(message) { + RetrieveTransferParametersRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -5349,9 +5533,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.RetrieveTransferParametersRequest} RetrieveTransferParametersRequest */ - RetrieveTransferParametersRequest.fromObject = function fromObject(object) { + RetrieveTransferParametersRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.RetrieveTransferParametersRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.RetrieveTransferParametersRequest(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -5433,7 +5621,7 @@ function RetrieveTransferParametersResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5498,9 +5686,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveTransferParametersResponse.decode = function decode(reader, length, error) { + RetrieveTransferParametersResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.RetrieveTransferParametersResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5508,11 +5700,11 @@ break; switch (tag >>> 3) { case 1: { - message.transferParameters = $root.google.cloud.domains.v1.TransferParameters.decode(reader, reader.uint32()); + message.transferParameters = $root.google.cloud.domains.v1.TransferParameters.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5543,11 +5735,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveTransferParametersResponse.verify = function verify(message) { + RetrieveTransferParametersResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.transferParameters != null && message.hasOwnProperty("transferParameters")) { - var error = $root.google.cloud.domains.v1.TransferParameters.verify(message.transferParameters); + var error = $root.google.cloud.domains.v1.TransferParameters.verify(message.transferParameters, long + 1); if (error) return "transferParameters." + error; } @@ -5562,14 +5758,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.RetrieveTransferParametersResponse} RetrieveTransferParametersResponse */ - RetrieveTransferParametersResponse.fromObject = function fromObject(object) { + RetrieveTransferParametersResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.RetrieveTransferParametersResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.RetrieveTransferParametersResponse(); if (object.transferParameters != null) { if (typeof object.transferParameters !== "object") throw TypeError(".google.cloud.domains.v1.RetrieveTransferParametersResponse.transferParameters: object expected"); - message.transferParameters = $root.google.cloud.domains.v1.TransferParameters.fromObject(object.transferParameters); + message.transferParameters = $root.google.cloud.domains.v1.TransferParameters.fromObject(object.transferParameters, long + 1); } return message; }; @@ -5649,7 +5849,7 @@ this.contactNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5768,9 +5968,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TransferDomainRequest.decode = function decode(reader, length, error) { + TransferDomainRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.TransferDomainRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5782,7 +5986,7 @@ break; } case 2: { - message.registration = $root.google.cloud.domains.v1.Registration.decode(reader, reader.uint32()); + message.registration = $root.google.cloud.domains.v1.Registration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -5797,11 +6001,11 @@ break; } case 4: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.authorizationCode = $root.google.cloud.domains.v1.AuthorizationCode.decode(reader, reader.uint32()); + message.authorizationCode = $root.google.cloud.domains.v1.AuthorizationCode.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -5809,7 +6013,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5840,14 +6044,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TransferDomainRequest.verify = function verify(message) { + TransferDomainRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.registration != null && message.hasOwnProperty("registration")) { - var error = $root.google.cloud.domains.v1.Registration.verify(message.registration); + var error = $root.google.cloud.domains.v1.Registration.verify(message.registration, long + 1); if (error) return "registration." + error; } @@ -5864,12 +6072,12 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } if (message.authorizationCode != null && message.hasOwnProperty("authorizationCode")) { - var error = $root.google.cloud.domains.v1.AuthorizationCode.verify(message.authorizationCode); + var error = $root.google.cloud.domains.v1.AuthorizationCode.verify(message.authorizationCode, long + 1); if (error) return "authorizationCode." + error; } @@ -5887,16 +6095,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.TransferDomainRequest} TransferDomainRequest */ - TransferDomainRequest.fromObject = function fromObject(object) { + TransferDomainRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.TransferDomainRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.TransferDomainRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.registration != null) { if (typeof object.registration !== "object") throw TypeError(".google.cloud.domains.v1.TransferDomainRequest.registration: object expected"); - message.registration = $root.google.cloud.domains.v1.Registration.fromObject(object.registration); + message.registration = $root.google.cloud.domains.v1.Registration.fromObject(object.registration, long + 1); } if (object.contactNotices) { if (!Array.isArray(object.contactNotices)) @@ -5922,12 +6134,12 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1.TransferDomainRequest.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } if (object.authorizationCode != null) { if (typeof object.authorizationCode !== "object") throw TypeError(".google.cloud.domains.v1.TransferDomainRequest.authorizationCode: object expected"); - message.authorizationCode = $root.google.cloud.domains.v1.AuthorizationCode.fromObject(object.authorizationCode); + message.authorizationCode = $root.google.cloud.domains.v1.AuthorizationCode.fromObject(object.authorizationCode, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -6026,7 +6238,7 @@ function ListRegistrationsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6121,9 +6333,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListRegistrationsRequest.decode = function decode(reader, length, error) { + ListRegistrationsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.ListRegistrationsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6147,7 +6363,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6178,9 +6394,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListRegistrationsRequest.verify = function verify(message) { + ListRegistrationsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -6204,9 +6424,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.ListRegistrationsRequest} ListRegistrationsRequest */ - ListRegistrationsRequest.fromObject = function fromObject(object) { + ListRegistrationsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.ListRegistrationsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.ListRegistrationsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -6300,7 +6524,7 @@ this.registrations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6376,9 +6600,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListRegistrationsResponse.decode = function decode(reader, length, error) { + ListRegistrationsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.ListRegistrationsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6388,7 +6616,7 @@ case 1: { if (!(message.registrations && message.registrations.length)) message.registrations = []; - message.registrations.push($root.google.cloud.domains.v1.Registration.decode(reader, reader.uint32())); + message.registrations.push($root.google.cloud.domains.v1.Registration.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -6396,7 +6624,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6427,14 +6655,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListRegistrationsResponse.verify = function verify(message) { + ListRegistrationsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registrations != null && message.hasOwnProperty("registrations")) { if (!Array.isArray(message.registrations)) return "registrations: array expected"; for (var i = 0; i < message.registrations.length; ++i) { - var error = $root.google.cloud.domains.v1.Registration.verify(message.registrations[i]); + var error = $root.google.cloud.domains.v1.Registration.verify(message.registrations[i], long + 1); if (error) return "registrations." + error; } @@ -6453,9 +6685,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.ListRegistrationsResponse} ListRegistrationsResponse */ - ListRegistrationsResponse.fromObject = function fromObject(object) { + ListRegistrationsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.ListRegistrationsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.ListRegistrationsResponse(); if (object.registrations) { if (!Array.isArray(object.registrations)) @@ -6464,7 +6700,7 @@ for (var i = 0; i < object.registrations.length; ++i) { if (typeof object.registrations[i] !== "object") throw TypeError(".google.cloud.domains.v1.ListRegistrationsResponse.registrations: object expected"); - message.registrations[i] = $root.google.cloud.domains.v1.Registration.fromObject(object.registrations[i]); + message.registrations[i] = $root.google.cloud.domains.v1.Registration.fromObject(object.registrations[i], long + 1); } } if (object.nextPageToken != null) @@ -6548,7 +6784,7 @@ function GetRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6613,9 +6849,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetRegistrationRequest.decode = function decode(reader, length, error) { + GetRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.GetRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6627,7 +6867,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6658,9 +6898,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetRegistrationRequest.verify = function verify(message) { + GetRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -6675,9 +6919,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.GetRegistrationRequest} GetRegistrationRequest */ - GetRegistrationRequest.fromObject = function fromObject(object) { + GetRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.GetRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.GetRegistrationRequest(); if (object.name != null) message.name = String(object.name); @@ -6754,7 +7002,7 @@ function UpdateRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6829,9 +7077,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateRegistrationRequest.decode = function decode(reader, length, error) { + UpdateRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.UpdateRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6839,15 +7091,15 @@ break; switch (tag >>> 3) { case 1: { - message.registration = $root.google.cloud.domains.v1.Registration.decode(reader, reader.uint32()); + message.registration = $root.google.cloud.domains.v1.Registration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6878,16 +7130,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateRegistrationRequest.verify = function verify(message) { + UpdateRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) { - var error = $root.google.cloud.domains.v1.Registration.verify(message.registration); + var error = $root.google.cloud.domains.v1.Registration.verify(message.registration, long + 1); if (error) return "registration." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -6902,19 +7158,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.UpdateRegistrationRequest} UpdateRegistrationRequest */ - UpdateRegistrationRequest.fromObject = function fromObject(object) { + UpdateRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.UpdateRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.UpdateRegistrationRequest(); if (object.registration != null) { if (typeof object.registration !== "object") throw TypeError(".google.cloud.domains.v1.UpdateRegistrationRequest.registration: object expected"); - message.registration = $root.google.cloud.domains.v1.Registration.fromObject(object.registration); + message.registration = $root.google.cloud.domains.v1.Registration.fromObject(object.registration, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1.UpdateRegistrationRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -6994,7 +7254,7 @@ function ConfigureManagementSettingsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7079,9 +7339,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConfigureManagementSettingsRequest.decode = function decode(reader, length, error) { + ConfigureManagementSettingsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.ConfigureManagementSettingsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7093,15 +7357,15 @@ break; } case 2: { - message.managementSettings = $root.google.cloud.domains.v1.ManagementSettings.decode(reader, reader.uint32()); + message.managementSettings = $root.google.cloud.domains.v1.ManagementSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7132,19 +7396,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConfigureManagementSettingsRequest.verify = function verify(message) { + ConfigureManagementSettingsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; if (message.managementSettings != null && message.hasOwnProperty("managementSettings")) { - var error = $root.google.cloud.domains.v1.ManagementSettings.verify(message.managementSettings); + var error = $root.google.cloud.domains.v1.ManagementSettings.verify(message.managementSettings, long + 1); if (error) return "managementSettings." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -7159,21 +7427,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.ConfigureManagementSettingsRequest} ConfigureManagementSettingsRequest */ - ConfigureManagementSettingsRequest.fromObject = function fromObject(object) { + ConfigureManagementSettingsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.ConfigureManagementSettingsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.ConfigureManagementSettingsRequest(); if (object.registration != null) message.registration = String(object.registration); if (object.managementSettings != null) { if (typeof object.managementSettings !== "object") throw TypeError(".google.cloud.domains.v1.ConfigureManagementSettingsRequest.managementSettings: object expected"); - message.managementSettings = $root.google.cloud.domains.v1.ManagementSettings.fromObject(object.managementSettings); + message.managementSettings = $root.google.cloud.domains.v1.ManagementSettings.fromObject(object.managementSettings, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1.ConfigureManagementSettingsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -7257,7 +7529,7 @@ function ConfigureDnsSettingsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7352,9 +7624,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConfigureDnsSettingsRequest.decode = function decode(reader, length, error) { + ConfigureDnsSettingsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.ConfigureDnsSettingsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7366,11 +7642,11 @@ break; } case 2: { - message.dnsSettings = $root.google.cloud.domains.v1.DnsSettings.decode(reader, reader.uint32()); + message.dnsSettings = $root.google.cloud.domains.v1.DnsSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -7378,7 +7654,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7409,19 +7685,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConfigureDnsSettingsRequest.verify = function verify(message) { + ConfigureDnsSettingsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; if (message.dnsSettings != null && message.hasOwnProperty("dnsSettings")) { - var error = $root.google.cloud.domains.v1.DnsSettings.verify(message.dnsSettings); + var error = $root.google.cloud.domains.v1.DnsSettings.verify(message.dnsSettings, long + 1); if (error) return "dnsSettings." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -7439,21 +7719,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.ConfigureDnsSettingsRequest} ConfigureDnsSettingsRequest */ - ConfigureDnsSettingsRequest.fromObject = function fromObject(object) { + ConfigureDnsSettingsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.ConfigureDnsSettingsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.ConfigureDnsSettingsRequest(); if (object.registration != null) message.registration = String(object.registration); if (object.dnsSettings != null) { if (typeof object.dnsSettings !== "object") throw TypeError(".google.cloud.domains.v1.ConfigureDnsSettingsRequest.dnsSettings: object expected"); - message.dnsSettings = $root.google.cloud.domains.v1.DnsSettings.fromObject(object.dnsSettings); + message.dnsSettings = $root.google.cloud.domains.v1.DnsSettings.fromObject(object.dnsSettings, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1.ConfigureDnsSettingsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -7544,7 +7828,7 @@ this.contactNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7653,9 +7937,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConfigureContactSettingsRequest.decode = function decode(reader, length, error) { + ConfigureContactSettingsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.ConfigureContactSettingsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7667,11 +7955,11 @@ break; } case 2: { - message.contactSettings = $root.google.cloud.domains.v1.ContactSettings.decode(reader, reader.uint32()); + message.contactSettings = $root.google.cloud.domains.v1.ContactSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -7690,7 +7978,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7721,19 +8009,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConfigureContactSettingsRequest.verify = function verify(message) { + ConfigureContactSettingsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; if (message.contactSettings != null && message.hasOwnProperty("contactSettings")) { - var error = $root.google.cloud.domains.v1.ContactSettings.verify(message.contactSettings); + var error = $root.google.cloud.domains.v1.ContactSettings.verify(message.contactSettings, long + 1); if (error) return "contactSettings." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -7763,21 +8055,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.ConfigureContactSettingsRequest} ConfigureContactSettingsRequest */ - ConfigureContactSettingsRequest.fromObject = function fromObject(object) { + ConfigureContactSettingsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.ConfigureContactSettingsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.ConfigureContactSettingsRequest(); if (object.registration != null) message.registration = String(object.registration); if (object.contactSettings != null) { if (typeof object.contactSettings !== "object") throw TypeError(".google.cloud.domains.v1.ConfigureContactSettingsRequest.contactSettings: object expected"); - message.contactSettings = $root.google.cloud.domains.v1.ContactSettings.fromObject(object.contactSettings); + message.contactSettings = $root.google.cloud.domains.v1.ContactSettings.fromObject(object.contactSettings, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1.ConfigureContactSettingsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.contactNotices) { if (!Array.isArray(object.contactNotices)) @@ -7891,7 +8187,7 @@ function ExportRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7956,9 +8252,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportRegistrationRequest.decode = function decode(reader, length, error) { + ExportRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.ExportRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7970,7 +8270,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8001,9 +8301,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportRegistrationRequest.verify = function verify(message) { + ExportRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -8018,9 +8322,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.ExportRegistrationRequest} ExportRegistrationRequest */ - ExportRegistrationRequest.fromObject = function fromObject(object) { + ExportRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.ExportRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.ExportRegistrationRequest(); if (object.name != null) message.name = String(object.name); @@ -8096,7 +8404,7 @@ function DeleteRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8161,9 +8469,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteRegistrationRequest.decode = function decode(reader, length, error) { + DeleteRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.DeleteRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8175,7 +8487,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8206,9 +8518,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteRegistrationRequest.verify = function verify(message) { + DeleteRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -8223,9 +8539,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.DeleteRegistrationRequest} DeleteRegistrationRequest */ - DeleteRegistrationRequest.fromObject = function fromObject(object) { + DeleteRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.DeleteRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.DeleteRegistrationRequest(); if (object.name != null) message.name = String(object.name); @@ -8301,7 +8621,7 @@ function RetrieveAuthorizationCodeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8366,9 +8686,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveAuthorizationCodeRequest.decode = function decode(reader, length, error) { + RetrieveAuthorizationCodeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8380,7 +8704,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8411,9 +8735,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveAuthorizationCodeRequest.verify = function verify(message) { + RetrieveAuthorizationCodeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; @@ -8428,9 +8756,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.RetrieveAuthorizationCodeRequest} RetrieveAuthorizationCodeRequest */ - RetrieveAuthorizationCodeRequest.fromObject = function fromObject(object) { + RetrieveAuthorizationCodeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest(); if (object.registration != null) message.registration = String(object.registration); @@ -8506,7 +8838,7 @@ function ResetAuthorizationCodeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8571,9 +8903,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResetAuthorizationCodeRequest.decode = function decode(reader, length, error) { + ResetAuthorizationCodeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.ResetAuthorizationCodeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8585,7 +8921,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8616,9 +8952,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResetAuthorizationCodeRequest.verify = function verify(message) { + ResetAuthorizationCodeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; @@ -8633,9 +8973,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.ResetAuthorizationCodeRequest} ResetAuthorizationCodeRequest */ - ResetAuthorizationCodeRequest.fromObject = function fromObject(object) { + ResetAuthorizationCodeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.ResetAuthorizationCodeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.ResetAuthorizationCodeRequest(); if (object.registration != null) message.registration = String(object.registration); @@ -8717,7 +9061,7 @@ this.domainNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8830,9 +9174,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RegisterParameters.decode = function decode(reader, length, error) { + RegisterParameters.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.RegisterParameters(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8870,11 +9218,11 @@ break; } case 5: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8905,9 +9253,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RegisterParameters.verify = function verify(message) { + RegisterParameters.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -8949,7 +9301,7 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } @@ -8964,9 +9316,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.RegisterParameters} RegisterParameters */ - RegisterParameters.fromObject = function fromObject(object) { + RegisterParameters.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.RegisterParameters) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.RegisterParameters(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -9051,7 +9407,7 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1.RegisterParameters.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } return message; }; @@ -9173,7 +9529,7 @@ this.supportedPrivacy = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9293,9 +9649,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TransferParameters.decode = function decode(reader, length, error) { + TransferParameters.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.TransferParameters(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9332,11 +9692,11 @@ break; } case 6: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9367,9 +9727,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TransferParameters.verify = function verify(message) { + TransferParameters.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -9407,7 +9771,7 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } @@ -9422,9 +9786,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.TransferParameters} TransferParameters */ - TransferParameters.fromObject = function fromObject(object) { + TransferParameters.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.TransferParameters) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.TransferParameters(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -9489,7 +9857,7 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1.TransferParameters.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } return message; }; @@ -9587,7 +9955,7 @@ function AuthorizationCode(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9652,9 +10020,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AuthorizationCode.decode = function decode(reader, length, error) { + AuthorizationCode.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.AuthorizationCode(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9666,7 +10038,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9697,9 +10069,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AuthorizationCode.verify = function verify(message) { + AuthorizationCode.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.code != null && message.hasOwnProperty("code")) if (!$util.isString(message.code)) return "code: string expected"; @@ -9714,9 +10090,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.AuthorizationCode} AuthorizationCode */ - AuthorizationCode.fromObject = function fromObject(object) { + AuthorizationCode.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.AuthorizationCode) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.AuthorizationCode(); if (object.code != null) message.code = String(object.code); @@ -9797,7 +10177,7 @@ function OperationMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9912,9 +10292,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationMetadata.decode = function decode(reader, length, error) { + OperationMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1.OperationMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9922,11 +10306,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -9946,7 +10330,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9977,16 +10361,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationMetadata.verify = function verify(message) { + OperationMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -10013,19 +10401,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1.OperationMetadata} OperationMetadata */ - OperationMetadata.fromObject = function fromObject(object) { + OperationMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1.OperationMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1.OperationMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.domains.v1.OperationMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.domains.v1.OperationMetadata.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } if (object.target != null) message.target = String(object.target); @@ -10741,7 +11133,7 @@ this.supportedPrivacy = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10925,9 +11317,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Registration.decode = function decode(reader, length, error) { + Registration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.Registration(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -10943,11 +11339,11 @@ break; } case 3: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -10981,27 +11377,29 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } case 10: { - message.managementSettings = $root.google.cloud.domains.v1alpha2.ManagementSettings.decode(reader, reader.uint32()); + message.managementSettings = $root.google.cloud.domains.v1alpha2.ManagementSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { - message.dnsSettings = $root.google.cloud.domains.v1alpha2.DnsSettings.decode(reader, reader.uint32()); + message.dnsSettings = $root.google.cloud.domains.v1alpha2.DnsSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { - message.contactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.decode(reader, reader.uint32()); + message.contactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.pendingContactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.decode(reader, reader.uint32()); + message.pendingContactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { @@ -11016,7 +11414,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11047,9 +11445,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Registration.verify = function verify(message) { + Registration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -11057,12 +11459,12 @@ if (!$util.isString(message.domainName)) return "domainName: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -11102,22 +11504,22 @@ return "labels: string{k:string} expected"; } if (message.managementSettings != null && message.hasOwnProperty("managementSettings")) { - var error = $root.google.cloud.domains.v1alpha2.ManagementSettings.verify(message.managementSettings); + var error = $root.google.cloud.domains.v1alpha2.ManagementSettings.verify(message.managementSettings, long + 1); if (error) return "managementSettings." + error; } if (message.dnsSettings != null && message.hasOwnProperty("dnsSettings")) { - var error = $root.google.cloud.domains.v1alpha2.DnsSettings.verify(message.dnsSettings); + var error = $root.google.cloud.domains.v1alpha2.DnsSettings.verify(message.dnsSettings, long + 1); if (error) return "dnsSettings." + error; } if (message.contactSettings != null && message.hasOwnProperty("contactSettings")) { - var error = $root.google.cloud.domains.v1alpha2.ContactSettings.verify(message.contactSettings); + var error = $root.google.cloud.domains.v1alpha2.ContactSettings.verify(message.contactSettings, long + 1); if (error) return "contactSettings." + error; } if (message.pendingContactSettings != null && message.hasOwnProperty("pendingContactSettings")) { - var error = $root.google.cloud.domains.v1alpha2.ContactSettings.verify(message.pendingContactSettings); + var error = $root.google.cloud.domains.v1alpha2.ContactSettings.verify(message.pendingContactSettings, long + 1); if (error) return "pendingContactSettings." + error; } @@ -11146,9 +11548,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.Registration} Registration */ - Registration.fromObject = function fromObject(object) { + Registration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.Registration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.Registration(); if (object.name != null) message.name = String(object.name); @@ -11157,12 +11563,12 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.domains.v1alpha2.Registration.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.domains.v1alpha2.Registration.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } switch (object.state) { default: @@ -11233,28 +11639,31 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.domains.v1alpha2.Registration.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.managementSettings != null) { if (typeof object.managementSettings !== "object") throw TypeError(".google.cloud.domains.v1alpha2.Registration.managementSettings: object expected"); - message.managementSettings = $root.google.cloud.domains.v1alpha2.ManagementSettings.fromObject(object.managementSettings); + message.managementSettings = $root.google.cloud.domains.v1alpha2.ManagementSettings.fromObject(object.managementSettings, long + 1); } if (object.dnsSettings != null) { if (typeof object.dnsSettings !== "object") throw TypeError(".google.cloud.domains.v1alpha2.Registration.dnsSettings: object expected"); - message.dnsSettings = $root.google.cloud.domains.v1alpha2.DnsSettings.fromObject(object.dnsSettings); + message.dnsSettings = $root.google.cloud.domains.v1alpha2.DnsSettings.fromObject(object.dnsSettings, long + 1); } if (object.contactSettings != null) { if (typeof object.contactSettings !== "object") throw TypeError(".google.cloud.domains.v1alpha2.Registration.contactSettings: object expected"); - message.contactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.fromObject(object.contactSettings); + message.contactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.fromObject(object.contactSettings, long + 1); } if (object.pendingContactSettings != null) { if (typeof object.pendingContactSettings !== "object") throw TypeError(".google.cloud.domains.v1alpha2.Registration.pendingContactSettings: object expected"); - message.pendingContactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.fromObject(object.pendingContactSettings); + message.pendingContactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.fromObject(object.pendingContactSettings, long + 1); } if (object.supportedPrivacy) { if (!Array.isArray(object.supportedPrivacy)) @@ -11336,8 +11745,11 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.managementSettings != null && message.hasOwnProperty("managementSettings")) object.managementSettings = $root.google.cloud.domains.v1alpha2.ManagementSettings.toObject(message.managementSettings, options); @@ -11447,7 +11859,7 @@ function ManagementSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11522,9 +11934,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ManagementSettings.decode = function decode(reader, length, error) { + ManagementSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.ManagementSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11540,7 +11956,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11571,9 +11987,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ManagementSettings.verify = function verify(message) { + ManagementSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.renewalMethod != null && message.hasOwnProperty("renewalMethod")) switch (message.renewalMethod) { default: @@ -11603,9 +12023,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.ManagementSettings} ManagementSettings */ - ManagementSettings.fromObject = function fromObject(object) { + ManagementSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.ManagementSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.ManagementSettings(); switch (object.renewalMethod) { default: @@ -11742,7 +12166,7 @@ this.glueRecords = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11842,9 +12266,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DnsSettings.decode = function decode(reader, length, error) { + DnsSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.DnsSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11852,21 +12280,21 @@ break; switch (tag >>> 3) { case 1: { - message.customDns = $root.google.cloud.domains.v1alpha2.DnsSettings.CustomDns.decode(reader, reader.uint32()); + message.customDns = $root.google.cloud.domains.v1alpha2.DnsSettings.CustomDns.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.googleDomainsDns = $root.google.cloud.domains.v1alpha2.DnsSettings.GoogleDomainsDns.decode(reader, reader.uint32()); + message.googleDomainsDns = $root.google.cloud.domains.v1alpha2.DnsSettings.GoogleDomainsDns.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.glueRecords && message.glueRecords.length)) message.glueRecords = []; - message.glueRecords.push($root.google.cloud.domains.v1alpha2.DnsSettings.GlueRecord.decode(reader, reader.uint32())); + message.glueRecords.push($root.google.cloud.domains.v1alpha2.DnsSettings.GlueRecord.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11897,14 +12325,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DnsSettings.verify = function verify(message) { + DnsSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.customDns != null && message.hasOwnProperty("customDns")) { properties.dnsProvider = 1; { - var error = $root.google.cloud.domains.v1alpha2.DnsSettings.CustomDns.verify(message.customDns); + var error = $root.google.cloud.domains.v1alpha2.DnsSettings.CustomDns.verify(message.customDns, long + 1); if (error) return "customDns." + error; } @@ -11914,7 +12346,7 @@ return "dnsProvider: multiple values"; properties.dnsProvider = 1; { - var error = $root.google.cloud.domains.v1alpha2.DnsSettings.GoogleDomainsDns.verify(message.googleDomainsDns); + var error = $root.google.cloud.domains.v1alpha2.DnsSettings.GoogleDomainsDns.verify(message.googleDomainsDns, long + 1); if (error) return "googleDomainsDns." + error; } @@ -11923,7 +12355,7 @@ if (!Array.isArray(message.glueRecords)) return "glueRecords: array expected"; for (var i = 0; i < message.glueRecords.length; ++i) { - var error = $root.google.cloud.domains.v1alpha2.DnsSettings.GlueRecord.verify(message.glueRecords[i]); + var error = $root.google.cloud.domains.v1alpha2.DnsSettings.GlueRecord.verify(message.glueRecords[i], long + 1); if (error) return "glueRecords." + error; } @@ -11939,19 +12371,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.DnsSettings} DnsSettings */ - DnsSettings.fromObject = function fromObject(object) { + DnsSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.DnsSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.DnsSettings(); if (object.customDns != null) { if (typeof object.customDns !== "object") throw TypeError(".google.cloud.domains.v1alpha2.DnsSettings.customDns: object expected"); - message.customDns = $root.google.cloud.domains.v1alpha2.DnsSettings.CustomDns.fromObject(object.customDns); + message.customDns = $root.google.cloud.domains.v1alpha2.DnsSettings.CustomDns.fromObject(object.customDns, long + 1); } if (object.googleDomainsDns != null) { if (typeof object.googleDomainsDns !== "object") throw TypeError(".google.cloud.domains.v1alpha2.DnsSettings.googleDomainsDns: object expected"); - message.googleDomainsDns = $root.google.cloud.domains.v1alpha2.DnsSettings.GoogleDomainsDns.fromObject(object.googleDomainsDns); + message.googleDomainsDns = $root.google.cloud.domains.v1alpha2.DnsSettings.GoogleDomainsDns.fromObject(object.googleDomainsDns, long + 1); } if (object.glueRecords) { if (!Array.isArray(object.glueRecords)) @@ -11960,7 +12396,7 @@ for (var i = 0; i < object.glueRecords.length; ++i) { if (typeof object.glueRecords[i] !== "object") throw TypeError(".google.cloud.domains.v1alpha2.DnsSettings.glueRecords: object expected"); - message.glueRecords[i] = $root.google.cloud.domains.v1alpha2.DnsSettings.GlueRecord.fromObject(object.glueRecords[i]); + message.glueRecords[i] = $root.google.cloud.domains.v1alpha2.DnsSettings.GlueRecord.fromObject(object.glueRecords[i], long + 1); } } return message; @@ -12048,7 +12484,7 @@ this.dsRecords = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12125,9 +12561,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomDns.decode = function decode(reader, length, error) { + CustomDns.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.DnsSettings.CustomDns(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12143,11 +12583,11 @@ case 2: { if (!(message.dsRecords && message.dsRecords.length)) message.dsRecords = []; - message.dsRecords.push($root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.decode(reader, reader.uint32())); + message.dsRecords.push($root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12178,9 +12618,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomDns.verify = function verify(message) { + CustomDns.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.nameServers != null && message.hasOwnProperty("nameServers")) { if (!Array.isArray(message.nameServers)) return "nameServers: array expected"; @@ -12192,7 +12636,7 @@ if (!Array.isArray(message.dsRecords)) return "dsRecords: array expected"; for (var i = 0; i < message.dsRecords.length; ++i) { - var error = $root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.verify(message.dsRecords[i]); + var error = $root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.verify(message.dsRecords[i], long + 1); if (error) return "dsRecords." + error; } @@ -12208,9 +12652,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.DnsSettings.CustomDns} CustomDns */ - CustomDns.fromObject = function fromObject(object) { + CustomDns.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.DnsSettings.CustomDns) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.DnsSettings.CustomDns(); if (object.nameServers) { if (!Array.isArray(object.nameServers)) @@ -12226,7 +12674,7 @@ for (var i = 0; i < object.dsRecords.length; ++i) { if (typeof object.dsRecords[i] !== "object") throw TypeError(".google.cloud.domains.v1alpha2.DnsSettings.CustomDns.dsRecords: object expected"); - message.dsRecords[i] = $root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.fromObject(object.dsRecords[i]); + message.dsRecords[i] = $root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.fromObject(object.dsRecords[i], long + 1); } } return message; @@ -12315,7 +12763,7 @@ this.dsRecords = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12402,9 +12850,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GoogleDomainsDns.decode = function decode(reader, length, error) { + GoogleDomainsDns.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.DnsSettings.GoogleDomainsDns(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12424,11 +12876,11 @@ case 3: { if (!(message.dsRecords && message.dsRecords.length)) message.dsRecords = []; - message.dsRecords.push($root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.decode(reader, reader.uint32())); + message.dsRecords.push($root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12459,9 +12911,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GoogleDomainsDns.verify = function verify(message) { + GoogleDomainsDns.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.nameServers != null && message.hasOwnProperty("nameServers")) { if (!Array.isArray(message.nameServers)) return "nameServers: array expected"; @@ -12482,7 +12938,7 @@ if (!Array.isArray(message.dsRecords)) return "dsRecords: array expected"; for (var i = 0; i < message.dsRecords.length; ++i) { - var error = $root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.verify(message.dsRecords[i]); + var error = $root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.verify(message.dsRecords[i], long + 1); if (error) return "dsRecords." + error; } @@ -12498,9 +12954,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.DnsSettings.GoogleDomainsDns} GoogleDomainsDns */ - GoogleDomainsDns.fromObject = function fromObject(object) { + GoogleDomainsDns.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.DnsSettings.GoogleDomainsDns) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.DnsSettings.GoogleDomainsDns(); if (object.nameServers) { if (!Array.isArray(object.nameServers)) @@ -12536,7 +12996,7 @@ for (var i = 0; i < object.dsRecords.length; ++i) { if (typeof object.dsRecords[i] !== "object") throw TypeError(".google.cloud.domains.v1alpha2.DnsSettings.GoogleDomainsDns.dsRecords: object expected"); - message.dsRecords[i] = $root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.fromObject(object.dsRecords[i]); + message.dsRecords[i] = $root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord.fromObject(object.dsRecords[i], long + 1); } } return message; @@ -12628,7 +13088,7 @@ function DsRecord(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12723,9 +13183,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DsRecord.decode = function decode(reader, length, error) { + DsRecord.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12749,7 +13213,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12780,9 +13244,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DsRecord.verify = function verify(message) { + DsRecord.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.keyTag != null && message.hasOwnProperty("keyTag")) if (!$util.isInteger(message.keyTag)) return "keyTag: integer expected"; @@ -12835,9 +13303,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.DnsSettings.DsRecord} DsRecord */ - DsRecord.fromObject = function fromObject(object) { + DsRecord.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.DnsSettings.DsRecord(); if (object.keyTag != null) message.keyTag = object.keyTag | 0; @@ -13103,7 +13575,7 @@ this.ipv6Addresses = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13190,9 +13662,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GlueRecord.decode = function decode(reader, length, error) { + GlueRecord.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.DnsSettings.GlueRecord(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13216,7 +13692,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13247,9 +13723,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GlueRecord.verify = function verify(message) { + GlueRecord.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.hostName != null && message.hasOwnProperty("hostName")) if (!$util.isString(message.hostName)) return "hostName: string expected"; @@ -13278,9 +13758,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.DnsSettings.GlueRecord} GlueRecord */ - GlueRecord.fromObject = function fromObject(object) { + GlueRecord.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.DnsSettings.GlueRecord) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.DnsSettings.GlueRecord(); if (object.hostName != null) message.hostName = String(object.hostName); @@ -13406,7 +13890,7 @@ function ContactSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13501,9 +13985,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ContactSettings.decode = function decode(reader, length, error) { + ContactSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.ContactSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13515,19 +14003,19 @@ break; } case 2: { - message.registrantContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.decode(reader, reader.uint32()); + message.registrantContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.adminContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.decode(reader, reader.uint32()); + message.adminContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.technicalContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.decode(reader, reader.uint32()); + message.technicalContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13558,9 +14046,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ContactSettings.verify = function verify(message) { + ContactSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.privacy != null && message.hasOwnProperty("privacy")) switch (message.privacy) { default: @@ -13572,17 +14064,17 @@ break; } if (message.registrantContact != null && message.hasOwnProperty("registrantContact")) { - var error = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.verify(message.registrantContact); + var error = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.verify(message.registrantContact, long + 1); if (error) return "registrantContact." + error; } if (message.adminContact != null && message.hasOwnProperty("adminContact")) { - var error = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.verify(message.adminContact); + var error = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.verify(message.adminContact, long + 1); if (error) return "adminContact." + error; } if (message.technicalContact != null && message.hasOwnProperty("technicalContact")) { - var error = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.verify(message.technicalContact); + var error = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.verify(message.technicalContact, long + 1); if (error) return "technicalContact." + error; } @@ -13597,9 +14089,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.ContactSettings} ContactSettings */ - ContactSettings.fromObject = function fromObject(object) { + ContactSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.ContactSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.ContactSettings(); switch (object.privacy) { default: @@ -13628,17 +14124,17 @@ if (object.registrantContact != null) { if (typeof object.registrantContact !== "object") throw TypeError(".google.cloud.domains.v1alpha2.ContactSettings.registrantContact: object expected"); - message.registrantContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.fromObject(object.registrantContact); + message.registrantContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.fromObject(object.registrantContact, long + 1); } if (object.adminContact != null) { if (typeof object.adminContact !== "object") throw TypeError(".google.cloud.domains.v1alpha2.ContactSettings.adminContact: object expected"); - message.adminContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.fromObject(object.adminContact); + message.adminContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.fromObject(object.adminContact, long + 1); } if (object.technicalContact != null) { if (typeof object.technicalContact !== "object") throw TypeError(".google.cloud.domains.v1alpha2.ContactSettings.technicalContact: object expected"); - message.technicalContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.fromObject(object.technicalContact); + message.technicalContact = $root.google.cloud.domains.v1alpha2.ContactSettings.Contact.fromObject(object.technicalContact, long + 1); } return message; }; @@ -13722,7 +14218,7 @@ function Contact(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13817,9 +14313,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Contact.decode = function decode(reader, length, error) { + Contact.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.ContactSettings.Contact(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13827,7 +14327,7 @@ break; switch (tag >>> 3) { case 1: { - message.postalAddress = $root.google.type.PostalAddress.decode(reader, reader.uint32()); + message.postalAddress = $root.google.type.PostalAddress.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -13843,7 +14343,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13874,11 +14374,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Contact.verify = function verify(message) { + Contact.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.postalAddress != null && message.hasOwnProperty("postalAddress")) { - var error = $root.google.type.PostalAddress.verify(message.postalAddress); + var error = $root.google.type.PostalAddress.verify(message.postalAddress, long + 1); if (error) return "postalAddress." + error; } @@ -13902,14 +14406,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.ContactSettings.Contact} Contact */ - Contact.fromObject = function fromObject(object) { + Contact.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.ContactSettings.Contact) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.ContactSettings.Contact(); if (object.postalAddress != null) { if (typeof object.postalAddress !== "object") throw TypeError(".google.cloud.domains.v1alpha2.ContactSettings.Contact.postalAddress: object expected"); - message.postalAddress = $root.google.type.PostalAddress.fromObject(object.postalAddress); + message.postalAddress = $root.google.type.PostalAddress.fromObject(object.postalAddress, long + 1); } if (object.email != null) message.email = String(object.email); @@ -14003,7 +14511,7 @@ function SearchDomainsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14078,9 +14586,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchDomainsRequest.decode = function decode(reader, length, error) { + SearchDomainsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.SearchDomainsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14096,7 +14608,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14127,9 +14639,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchDomainsRequest.verify = function verify(message) { + SearchDomainsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.query != null && message.hasOwnProperty("query")) if (!$util.isString(message.query)) return "query: string expected"; @@ -14147,9 +14663,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.SearchDomainsRequest} SearchDomainsRequest */ - SearchDomainsRequest.fromObject = function fromObject(object) { + SearchDomainsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.SearchDomainsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.SearchDomainsRequest(); if (object.query != null) message.query = String(object.query); @@ -14232,7 +14752,7 @@ this.registerParameters = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14298,9 +14818,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchDomainsResponse.decode = function decode(reader, length, error) { + SearchDomainsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.SearchDomainsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14310,11 +14834,11 @@ case 1: { if (!(message.registerParameters && message.registerParameters.length)) message.registerParameters = []; - message.registerParameters.push($root.google.cloud.domains.v1alpha2.RegisterParameters.decode(reader, reader.uint32())); + message.registerParameters.push($root.google.cloud.domains.v1alpha2.RegisterParameters.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14345,14 +14869,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchDomainsResponse.verify = function verify(message) { + SearchDomainsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registerParameters != null && message.hasOwnProperty("registerParameters")) { if (!Array.isArray(message.registerParameters)) return "registerParameters: array expected"; for (var i = 0; i < message.registerParameters.length; ++i) { - var error = $root.google.cloud.domains.v1alpha2.RegisterParameters.verify(message.registerParameters[i]); + var error = $root.google.cloud.domains.v1alpha2.RegisterParameters.verify(message.registerParameters[i], long + 1); if (error) return "registerParameters." + error; } @@ -14368,9 +14896,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.SearchDomainsResponse} SearchDomainsResponse */ - SearchDomainsResponse.fromObject = function fromObject(object) { + SearchDomainsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.SearchDomainsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.SearchDomainsResponse(); if (object.registerParameters) { if (!Array.isArray(object.registerParameters)) @@ -14379,7 +14911,7 @@ for (var i = 0; i < object.registerParameters.length; ++i) { if (typeof object.registerParameters[i] !== "object") throw TypeError(".google.cloud.domains.v1alpha2.SearchDomainsResponse.registerParameters: object expected"); - message.registerParameters[i] = $root.google.cloud.domains.v1alpha2.RegisterParameters.fromObject(object.registerParameters[i]); + message.registerParameters[i] = $root.google.cloud.domains.v1alpha2.RegisterParameters.fromObject(object.registerParameters[i], long + 1); } } return message; @@ -14458,7 +14990,7 @@ function RetrieveRegisterParametersRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14533,9 +15065,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveRegisterParametersRequest.decode = function decode(reader, length, error) { + RetrieveRegisterParametersRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14551,7 +15087,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14582,9 +15118,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveRegisterParametersRequest.verify = function verify(message) { + RetrieveRegisterParametersRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -14602,9 +15142,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest} RetrieveRegisterParametersRequest */ - RetrieveRegisterParametersRequest.fromObject = function fromObject(object) { + RetrieveRegisterParametersRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -14686,7 +15230,7 @@ function RetrieveRegisterParametersResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14751,9 +15295,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveRegisterParametersResponse.decode = function decode(reader, length, error) { + RetrieveRegisterParametersResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.RetrieveRegisterParametersResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14761,11 +15309,11 @@ break; switch (tag >>> 3) { case 1: { - message.registerParameters = $root.google.cloud.domains.v1alpha2.RegisterParameters.decode(reader, reader.uint32()); + message.registerParameters = $root.google.cloud.domains.v1alpha2.RegisterParameters.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14796,11 +15344,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveRegisterParametersResponse.verify = function verify(message) { + RetrieveRegisterParametersResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registerParameters != null && message.hasOwnProperty("registerParameters")) { - var error = $root.google.cloud.domains.v1alpha2.RegisterParameters.verify(message.registerParameters); + var error = $root.google.cloud.domains.v1alpha2.RegisterParameters.verify(message.registerParameters, long + 1); if (error) return "registerParameters." + error; } @@ -14815,14 +15367,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.RetrieveRegisterParametersResponse} RetrieveRegisterParametersResponse */ - RetrieveRegisterParametersResponse.fromObject = function fromObject(object) { + RetrieveRegisterParametersResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.RetrieveRegisterParametersResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.RetrieveRegisterParametersResponse(); if (object.registerParameters != null) { if (typeof object.registerParameters !== "object") throw TypeError(".google.cloud.domains.v1alpha2.RetrieveRegisterParametersResponse.registerParameters: object expected"); - message.registerParameters = $root.google.cloud.domains.v1alpha2.RegisterParameters.fromObject(object.registerParameters); + message.registerParameters = $root.google.cloud.domains.v1alpha2.RegisterParameters.fromObject(object.registerParameters, long + 1); } return message; }; @@ -14903,7 +15459,7 @@ this.contactNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15026,9 +15582,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RegisterDomainRequest.decode = function decode(reader, length, error) { + RegisterDomainRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.RegisterDomainRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15040,7 +15600,7 @@ break; } case 2: { - message.registration = $root.google.cloud.domains.v1alpha2.Registration.decode(reader, reader.uint32()); + message.registration = $root.google.cloud.domains.v1alpha2.Registration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -15066,7 +15626,7 @@ break; } case 5: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -15074,7 +15634,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15105,14 +15665,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RegisterDomainRequest.verify = function verify(message) { + RegisterDomainRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.registration != null && message.hasOwnProperty("registration")) { - var error = $root.google.cloud.domains.v1alpha2.Registration.verify(message.registration); + var error = $root.google.cloud.domains.v1alpha2.Registration.verify(message.registration, long + 1); if (error) return "registration." + error; } @@ -15141,7 +15705,7 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } @@ -15159,16 +15723,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.RegisterDomainRequest} RegisterDomainRequest */ - RegisterDomainRequest.fromObject = function fromObject(object) { + RegisterDomainRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.RegisterDomainRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.RegisterDomainRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.registration != null) { if (typeof object.registration !== "object") throw TypeError(".google.cloud.domains.v1alpha2.RegisterDomainRequest.registration: object expected"); - message.registration = $root.google.cloud.domains.v1alpha2.Registration.fromObject(object.registration); + message.registration = $root.google.cloud.domains.v1alpha2.Registration.fromObject(object.registration, long + 1); } if (object.domainNotices) { if (!Array.isArray(object.domainNotices)) @@ -15215,7 +15783,7 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1alpha2.RegisterDomainRequest.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -15316,7 +15884,7 @@ function RetrieveTransferParametersRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15391,9 +15959,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveTransferParametersRequest.decode = function decode(reader, length, error) { + RetrieveTransferParametersRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15409,7 +15981,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15440,9 +16012,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveTransferParametersRequest.verify = function verify(message) { + RetrieveTransferParametersRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -15460,9 +16036,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest} RetrieveTransferParametersRequest */ - RetrieveTransferParametersRequest.fromObject = function fromObject(object) { + RetrieveTransferParametersRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -15544,7 +16124,7 @@ function RetrieveTransferParametersResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15609,9 +16189,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveTransferParametersResponse.decode = function decode(reader, length, error) { + RetrieveTransferParametersResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.RetrieveTransferParametersResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15619,11 +16203,11 @@ break; switch (tag >>> 3) { case 1: { - message.transferParameters = $root.google.cloud.domains.v1alpha2.TransferParameters.decode(reader, reader.uint32()); + message.transferParameters = $root.google.cloud.domains.v1alpha2.TransferParameters.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15654,11 +16238,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveTransferParametersResponse.verify = function verify(message) { + RetrieveTransferParametersResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.transferParameters != null && message.hasOwnProperty("transferParameters")) { - var error = $root.google.cloud.domains.v1alpha2.TransferParameters.verify(message.transferParameters); + var error = $root.google.cloud.domains.v1alpha2.TransferParameters.verify(message.transferParameters, long + 1); if (error) return "transferParameters." + error; } @@ -15673,14 +16261,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.RetrieveTransferParametersResponse} RetrieveTransferParametersResponse */ - RetrieveTransferParametersResponse.fromObject = function fromObject(object) { + RetrieveTransferParametersResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.RetrieveTransferParametersResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.RetrieveTransferParametersResponse(); if (object.transferParameters != null) { if (typeof object.transferParameters !== "object") throw TypeError(".google.cloud.domains.v1alpha2.RetrieveTransferParametersResponse.transferParameters: object expected"); - message.transferParameters = $root.google.cloud.domains.v1alpha2.TransferParameters.fromObject(object.transferParameters); + message.transferParameters = $root.google.cloud.domains.v1alpha2.TransferParameters.fromObject(object.transferParameters, long + 1); } return message; }; @@ -15760,7 +16352,7 @@ this.contactNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15879,9 +16471,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TransferDomainRequest.decode = function decode(reader, length, error) { + TransferDomainRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.TransferDomainRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15893,7 +16489,7 @@ break; } case 2: { - message.registration = $root.google.cloud.domains.v1alpha2.Registration.decode(reader, reader.uint32()); + message.registration = $root.google.cloud.domains.v1alpha2.Registration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -15908,11 +16504,11 @@ break; } case 4: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.authorizationCode = $root.google.cloud.domains.v1alpha2.AuthorizationCode.decode(reader, reader.uint32()); + message.authorizationCode = $root.google.cloud.domains.v1alpha2.AuthorizationCode.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -15920,7 +16516,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15951,14 +16547,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TransferDomainRequest.verify = function verify(message) { + TransferDomainRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.registration != null && message.hasOwnProperty("registration")) { - var error = $root.google.cloud.domains.v1alpha2.Registration.verify(message.registration); + var error = $root.google.cloud.domains.v1alpha2.Registration.verify(message.registration, long + 1); if (error) return "registration." + error; } @@ -15975,12 +16575,12 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } if (message.authorizationCode != null && message.hasOwnProperty("authorizationCode")) { - var error = $root.google.cloud.domains.v1alpha2.AuthorizationCode.verify(message.authorizationCode); + var error = $root.google.cloud.domains.v1alpha2.AuthorizationCode.verify(message.authorizationCode, long + 1); if (error) return "authorizationCode." + error; } @@ -15998,16 +16598,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.TransferDomainRequest} TransferDomainRequest */ - TransferDomainRequest.fromObject = function fromObject(object) { + TransferDomainRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.TransferDomainRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.TransferDomainRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.registration != null) { if (typeof object.registration !== "object") throw TypeError(".google.cloud.domains.v1alpha2.TransferDomainRequest.registration: object expected"); - message.registration = $root.google.cloud.domains.v1alpha2.Registration.fromObject(object.registration); + message.registration = $root.google.cloud.domains.v1alpha2.Registration.fromObject(object.registration, long + 1); } if (object.contactNotices) { if (!Array.isArray(object.contactNotices)) @@ -16033,12 +16637,12 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1alpha2.TransferDomainRequest.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } if (object.authorizationCode != null) { if (typeof object.authorizationCode !== "object") throw TypeError(".google.cloud.domains.v1alpha2.TransferDomainRequest.authorizationCode: object expected"); - message.authorizationCode = $root.google.cloud.domains.v1alpha2.AuthorizationCode.fromObject(object.authorizationCode); + message.authorizationCode = $root.google.cloud.domains.v1alpha2.AuthorizationCode.fromObject(object.authorizationCode, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -16137,7 +16741,7 @@ function ListRegistrationsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16232,9 +16836,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListRegistrationsRequest.decode = function decode(reader, length, error) { + ListRegistrationsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.ListRegistrationsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16258,7 +16866,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16289,9 +16897,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListRegistrationsRequest.verify = function verify(message) { + ListRegistrationsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -16315,9 +16927,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.ListRegistrationsRequest} ListRegistrationsRequest */ - ListRegistrationsRequest.fromObject = function fromObject(object) { + ListRegistrationsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.ListRegistrationsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.ListRegistrationsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -16411,7 +17027,7 @@ this.registrations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16487,9 +17103,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListRegistrationsResponse.decode = function decode(reader, length, error) { + ListRegistrationsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.ListRegistrationsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16499,7 +17119,7 @@ case 1: { if (!(message.registrations && message.registrations.length)) message.registrations = []; - message.registrations.push($root.google.cloud.domains.v1alpha2.Registration.decode(reader, reader.uint32())); + message.registrations.push($root.google.cloud.domains.v1alpha2.Registration.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -16507,7 +17127,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16538,14 +17158,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListRegistrationsResponse.verify = function verify(message) { + ListRegistrationsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registrations != null && message.hasOwnProperty("registrations")) { if (!Array.isArray(message.registrations)) return "registrations: array expected"; for (var i = 0; i < message.registrations.length; ++i) { - var error = $root.google.cloud.domains.v1alpha2.Registration.verify(message.registrations[i]); + var error = $root.google.cloud.domains.v1alpha2.Registration.verify(message.registrations[i], long + 1); if (error) return "registrations." + error; } @@ -16564,9 +17188,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.ListRegistrationsResponse} ListRegistrationsResponse */ - ListRegistrationsResponse.fromObject = function fromObject(object) { + ListRegistrationsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.ListRegistrationsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.ListRegistrationsResponse(); if (object.registrations) { if (!Array.isArray(object.registrations)) @@ -16575,7 +17203,7 @@ for (var i = 0; i < object.registrations.length; ++i) { if (typeof object.registrations[i] !== "object") throw TypeError(".google.cloud.domains.v1alpha2.ListRegistrationsResponse.registrations: object expected"); - message.registrations[i] = $root.google.cloud.domains.v1alpha2.Registration.fromObject(object.registrations[i]); + message.registrations[i] = $root.google.cloud.domains.v1alpha2.Registration.fromObject(object.registrations[i], long + 1); } } if (object.nextPageToken != null) @@ -16659,7 +17287,7 @@ function GetRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16724,9 +17352,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetRegistrationRequest.decode = function decode(reader, length, error) { + GetRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.GetRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16738,7 +17370,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16769,9 +17401,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetRegistrationRequest.verify = function verify(message) { + GetRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -16786,9 +17422,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.GetRegistrationRequest} GetRegistrationRequest */ - GetRegistrationRequest.fromObject = function fromObject(object) { + GetRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.GetRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.GetRegistrationRequest(); if (object.name != null) message.name = String(object.name); @@ -16865,7 +17505,7 @@ function UpdateRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16940,9 +17580,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateRegistrationRequest.decode = function decode(reader, length, error) { + UpdateRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.UpdateRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16950,15 +17594,15 @@ break; switch (tag >>> 3) { case 1: { - message.registration = $root.google.cloud.domains.v1alpha2.Registration.decode(reader, reader.uint32()); + message.registration = $root.google.cloud.domains.v1alpha2.Registration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16989,16 +17633,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateRegistrationRequest.verify = function verify(message) { + UpdateRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) { - var error = $root.google.cloud.domains.v1alpha2.Registration.verify(message.registration); + var error = $root.google.cloud.domains.v1alpha2.Registration.verify(message.registration, long + 1); if (error) return "registration." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -17013,19 +17661,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.UpdateRegistrationRequest} UpdateRegistrationRequest */ - UpdateRegistrationRequest.fromObject = function fromObject(object) { + UpdateRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.UpdateRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.UpdateRegistrationRequest(); if (object.registration != null) { if (typeof object.registration !== "object") throw TypeError(".google.cloud.domains.v1alpha2.UpdateRegistrationRequest.registration: object expected"); - message.registration = $root.google.cloud.domains.v1alpha2.Registration.fromObject(object.registration); + message.registration = $root.google.cloud.domains.v1alpha2.Registration.fromObject(object.registration, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1alpha2.UpdateRegistrationRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -17105,7 +17757,7 @@ function ConfigureManagementSettingsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17190,9 +17842,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConfigureManagementSettingsRequest.decode = function decode(reader, length, error) { + ConfigureManagementSettingsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17204,15 +17860,15 @@ break; } case 2: { - message.managementSettings = $root.google.cloud.domains.v1alpha2.ManagementSettings.decode(reader, reader.uint32()); + message.managementSettings = $root.google.cloud.domains.v1alpha2.ManagementSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17243,19 +17899,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConfigureManagementSettingsRequest.verify = function verify(message) { + ConfigureManagementSettingsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; if (message.managementSettings != null && message.hasOwnProperty("managementSettings")) { - var error = $root.google.cloud.domains.v1alpha2.ManagementSettings.verify(message.managementSettings); + var error = $root.google.cloud.domains.v1alpha2.ManagementSettings.verify(message.managementSettings, long + 1); if (error) return "managementSettings." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -17270,21 +17930,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest} ConfigureManagementSettingsRequest */ - ConfigureManagementSettingsRequest.fromObject = function fromObject(object) { + ConfigureManagementSettingsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest(); if (object.registration != null) message.registration = String(object.registration); if (object.managementSettings != null) { if (typeof object.managementSettings !== "object") throw TypeError(".google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest.managementSettings: object expected"); - message.managementSettings = $root.google.cloud.domains.v1alpha2.ManagementSettings.fromObject(object.managementSettings); + message.managementSettings = $root.google.cloud.domains.v1alpha2.ManagementSettings.fromObject(object.managementSettings, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -17368,7 +18032,7 @@ function ConfigureDnsSettingsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17463,9 +18127,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConfigureDnsSettingsRequest.decode = function decode(reader, length, error) { + ConfigureDnsSettingsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17477,11 +18145,11 @@ break; } case 2: { - message.dnsSettings = $root.google.cloud.domains.v1alpha2.DnsSettings.decode(reader, reader.uint32()); + message.dnsSettings = $root.google.cloud.domains.v1alpha2.DnsSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -17489,7 +18157,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17520,19 +18188,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConfigureDnsSettingsRequest.verify = function verify(message) { + ConfigureDnsSettingsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; if (message.dnsSettings != null && message.hasOwnProperty("dnsSettings")) { - var error = $root.google.cloud.domains.v1alpha2.DnsSettings.verify(message.dnsSettings); + var error = $root.google.cloud.domains.v1alpha2.DnsSettings.verify(message.dnsSettings, long + 1); if (error) return "dnsSettings." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -17550,21 +18222,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest} ConfigureDnsSettingsRequest */ - ConfigureDnsSettingsRequest.fromObject = function fromObject(object) { + ConfigureDnsSettingsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest(); if (object.registration != null) message.registration = String(object.registration); if (object.dnsSettings != null) { if (typeof object.dnsSettings !== "object") throw TypeError(".google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest.dnsSettings: object expected"); - message.dnsSettings = $root.google.cloud.domains.v1alpha2.DnsSettings.fromObject(object.dnsSettings); + message.dnsSettings = $root.google.cloud.domains.v1alpha2.DnsSettings.fromObject(object.dnsSettings, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -17655,7 +18331,7 @@ this.contactNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17764,9 +18440,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConfigureContactSettingsRequest.decode = function decode(reader, length, error) { + ConfigureContactSettingsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17778,11 +18458,11 @@ break; } case 2: { - message.contactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.decode(reader, reader.uint32()); + message.contactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -17801,7 +18481,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17832,19 +18512,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConfigureContactSettingsRequest.verify = function verify(message) { + ConfigureContactSettingsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; if (message.contactSettings != null && message.hasOwnProperty("contactSettings")) { - var error = $root.google.cloud.domains.v1alpha2.ContactSettings.verify(message.contactSettings); + var error = $root.google.cloud.domains.v1alpha2.ContactSettings.verify(message.contactSettings, long + 1); if (error) return "contactSettings." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -17874,21 +18558,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest} ConfigureContactSettingsRequest */ - ConfigureContactSettingsRequest.fromObject = function fromObject(object) { + ConfigureContactSettingsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest(); if (object.registration != null) message.registration = String(object.registration); if (object.contactSettings != null) { if (typeof object.contactSettings !== "object") throw TypeError(".google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest.contactSettings: object expected"); - message.contactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.fromObject(object.contactSettings); + message.contactSettings = $root.google.cloud.domains.v1alpha2.ContactSettings.fromObject(object.contactSettings, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.contactNotices) { if (!Array.isArray(object.contactNotices)) @@ -18002,7 +18690,7 @@ function ExportRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18067,9 +18755,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportRegistrationRequest.decode = function decode(reader, length, error) { + ExportRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.ExportRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18081,7 +18773,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18112,9 +18804,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportRegistrationRequest.verify = function verify(message) { + ExportRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -18129,9 +18825,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.ExportRegistrationRequest} ExportRegistrationRequest */ - ExportRegistrationRequest.fromObject = function fromObject(object) { + ExportRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.ExportRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.ExportRegistrationRequest(); if (object.name != null) message.name = String(object.name); @@ -18207,7 +18907,7 @@ function DeleteRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18272,9 +18972,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteRegistrationRequest.decode = function decode(reader, length, error) { + DeleteRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.DeleteRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18286,7 +18990,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18317,9 +19021,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteRegistrationRequest.verify = function verify(message) { + DeleteRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -18334,9 +19042,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.DeleteRegistrationRequest} DeleteRegistrationRequest */ - DeleteRegistrationRequest.fromObject = function fromObject(object) { + DeleteRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.DeleteRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.DeleteRegistrationRequest(); if (object.name != null) message.name = String(object.name); @@ -18412,7 +19124,7 @@ function RetrieveAuthorizationCodeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18477,9 +19189,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveAuthorizationCodeRequest.decode = function decode(reader, length, error) { + RetrieveAuthorizationCodeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18491,7 +19207,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18522,9 +19238,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveAuthorizationCodeRequest.verify = function verify(message) { + RetrieveAuthorizationCodeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; @@ -18539,9 +19259,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest} RetrieveAuthorizationCodeRequest */ - RetrieveAuthorizationCodeRequest.fromObject = function fromObject(object) { + RetrieveAuthorizationCodeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest(); if (object.registration != null) message.registration = String(object.registration); @@ -18617,7 +19341,7 @@ function ResetAuthorizationCodeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18682,9 +19406,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResetAuthorizationCodeRequest.decode = function decode(reader, length, error) { + ResetAuthorizationCodeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18696,7 +19424,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18727,9 +19455,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResetAuthorizationCodeRequest.verify = function verify(message) { + ResetAuthorizationCodeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; @@ -18744,9 +19476,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest} ResetAuthorizationCodeRequest */ - ResetAuthorizationCodeRequest.fromObject = function fromObject(object) { + ResetAuthorizationCodeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest(); if (object.registration != null) message.registration = String(object.registration); @@ -18828,7 +19564,7 @@ this.domainNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18941,9 +19677,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RegisterParameters.decode = function decode(reader, length, error) { + RegisterParameters.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.RegisterParameters(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18981,11 +19721,11 @@ break; } case 5: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19016,9 +19756,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RegisterParameters.verify = function verify(message) { + RegisterParameters.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -19060,7 +19804,7 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } @@ -19075,9 +19819,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.RegisterParameters} RegisterParameters */ - RegisterParameters.fromObject = function fromObject(object) { + RegisterParameters.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.RegisterParameters) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.RegisterParameters(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -19162,7 +19910,7 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1alpha2.RegisterParameters.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } return message; }; @@ -19284,7 +20032,7 @@ this.supportedPrivacy = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19404,9 +20152,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TransferParameters.decode = function decode(reader, length, error) { + TransferParameters.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.TransferParameters(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19443,11 +20195,11 @@ break; } case 6: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19478,9 +20230,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TransferParameters.verify = function verify(message) { + TransferParameters.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -19518,7 +20274,7 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } @@ -19533,9 +20289,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.TransferParameters} TransferParameters */ - TransferParameters.fromObject = function fromObject(object) { + TransferParameters.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.TransferParameters) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.TransferParameters(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -19600,7 +20360,7 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1alpha2.TransferParameters.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } return message; }; @@ -19698,7 +20458,7 @@ function AuthorizationCode(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19763,9 +20523,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AuthorizationCode.decode = function decode(reader, length, error) { + AuthorizationCode.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.AuthorizationCode(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19777,7 +20541,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19808,9 +20572,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AuthorizationCode.verify = function verify(message) { + AuthorizationCode.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.code != null && message.hasOwnProperty("code")) if (!$util.isString(message.code)) return "code: string expected"; @@ -19825,9 +20593,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.AuthorizationCode} AuthorizationCode */ - AuthorizationCode.fromObject = function fromObject(object) { + AuthorizationCode.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.AuthorizationCode) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.AuthorizationCode(); if (object.code != null) message.code = String(object.code); @@ -19908,7 +20680,7 @@ function OperationMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20023,9 +20795,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationMetadata.decode = function decode(reader, length, error) { + OperationMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1alpha2.OperationMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20033,11 +20809,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -20057,7 +20833,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20088,16 +20864,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationMetadata.verify = function verify(message) { + OperationMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -20124,19 +20904,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1alpha2.OperationMetadata} OperationMetadata */ - OperationMetadata.fromObject = function fromObject(object) { + OperationMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1alpha2.OperationMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1alpha2.OperationMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.domains.v1alpha2.OperationMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.domains.v1alpha2.OperationMetadata.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } if (object.target != null) message.target = String(object.target); @@ -20852,7 +21636,7 @@ this.supportedPrivacy = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21036,9 +21820,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Registration.decode = function decode(reader, length, error) { + Registration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.Registration(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -21054,11 +21842,11 @@ break; } case 3: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -21092,27 +21880,29 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } case 10: { - message.managementSettings = $root.google.cloud.domains.v1beta1.ManagementSettings.decode(reader, reader.uint32()); + message.managementSettings = $root.google.cloud.domains.v1beta1.ManagementSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { - message.dnsSettings = $root.google.cloud.domains.v1beta1.DnsSettings.decode(reader, reader.uint32()); + message.dnsSettings = $root.google.cloud.domains.v1beta1.DnsSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { - message.contactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.decode(reader, reader.uint32()); + message.contactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.pendingContactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.decode(reader, reader.uint32()); + message.pendingContactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { @@ -21127,7 +21917,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21158,9 +21948,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Registration.verify = function verify(message) { + Registration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -21168,12 +21962,12 @@ if (!$util.isString(message.domainName)) return "domainName: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -21213,22 +22007,22 @@ return "labels: string{k:string} expected"; } if (message.managementSettings != null && message.hasOwnProperty("managementSettings")) { - var error = $root.google.cloud.domains.v1beta1.ManagementSettings.verify(message.managementSettings); + var error = $root.google.cloud.domains.v1beta1.ManagementSettings.verify(message.managementSettings, long + 1); if (error) return "managementSettings." + error; } if (message.dnsSettings != null && message.hasOwnProperty("dnsSettings")) { - var error = $root.google.cloud.domains.v1beta1.DnsSettings.verify(message.dnsSettings); + var error = $root.google.cloud.domains.v1beta1.DnsSettings.verify(message.dnsSettings, long + 1); if (error) return "dnsSettings." + error; } if (message.contactSettings != null && message.hasOwnProperty("contactSettings")) { - var error = $root.google.cloud.domains.v1beta1.ContactSettings.verify(message.contactSettings); + var error = $root.google.cloud.domains.v1beta1.ContactSettings.verify(message.contactSettings, long + 1); if (error) return "contactSettings." + error; } if (message.pendingContactSettings != null && message.hasOwnProperty("pendingContactSettings")) { - var error = $root.google.cloud.domains.v1beta1.ContactSettings.verify(message.pendingContactSettings); + var error = $root.google.cloud.domains.v1beta1.ContactSettings.verify(message.pendingContactSettings, long + 1); if (error) return "pendingContactSettings." + error; } @@ -21257,9 +22051,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.Registration} Registration */ - Registration.fromObject = function fromObject(object) { + Registration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.Registration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.Registration(); if (object.name != null) message.name = String(object.name); @@ -21268,12 +22066,12 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.domains.v1beta1.Registration.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.domains.v1beta1.Registration.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } switch (object.state) { default: @@ -21344,28 +22142,31 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.domains.v1beta1.Registration.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.managementSettings != null) { if (typeof object.managementSettings !== "object") throw TypeError(".google.cloud.domains.v1beta1.Registration.managementSettings: object expected"); - message.managementSettings = $root.google.cloud.domains.v1beta1.ManagementSettings.fromObject(object.managementSettings); + message.managementSettings = $root.google.cloud.domains.v1beta1.ManagementSettings.fromObject(object.managementSettings, long + 1); } if (object.dnsSettings != null) { if (typeof object.dnsSettings !== "object") throw TypeError(".google.cloud.domains.v1beta1.Registration.dnsSettings: object expected"); - message.dnsSettings = $root.google.cloud.domains.v1beta1.DnsSettings.fromObject(object.dnsSettings); + message.dnsSettings = $root.google.cloud.domains.v1beta1.DnsSettings.fromObject(object.dnsSettings, long + 1); } if (object.contactSettings != null) { if (typeof object.contactSettings !== "object") throw TypeError(".google.cloud.domains.v1beta1.Registration.contactSettings: object expected"); - message.contactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.fromObject(object.contactSettings); + message.contactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.fromObject(object.contactSettings, long + 1); } if (object.pendingContactSettings != null) { if (typeof object.pendingContactSettings !== "object") throw TypeError(".google.cloud.domains.v1beta1.Registration.pendingContactSettings: object expected"); - message.pendingContactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.fromObject(object.pendingContactSettings); + message.pendingContactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.fromObject(object.pendingContactSettings, long + 1); } if (object.supportedPrivacy) { if (!Array.isArray(object.supportedPrivacy)) @@ -21447,8 +22248,11 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.managementSettings != null && message.hasOwnProperty("managementSettings")) object.managementSettings = $root.google.cloud.domains.v1beta1.ManagementSettings.toObject(message.managementSettings, options); @@ -21558,7 +22362,7 @@ function ManagementSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21633,9 +22437,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ManagementSettings.decode = function decode(reader, length, error) { + ManagementSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.ManagementSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21651,7 +22459,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21682,9 +22490,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ManagementSettings.verify = function verify(message) { + ManagementSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.renewalMethod != null && message.hasOwnProperty("renewalMethod")) switch (message.renewalMethod) { default: @@ -21714,9 +22526,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.ManagementSettings} ManagementSettings */ - ManagementSettings.fromObject = function fromObject(object) { + ManagementSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.ManagementSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.ManagementSettings(); switch (object.renewalMethod) { default: @@ -21853,7 +22669,7 @@ this.glueRecords = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21953,9 +22769,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DnsSettings.decode = function decode(reader, length, error) { + DnsSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.DnsSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21963,21 +22783,21 @@ break; switch (tag >>> 3) { case 1: { - message.customDns = $root.google.cloud.domains.v1beta1.DnsSettings.CustomDns.decode(reader, reader.uint32()); + message.customDns = $root.google.cloud.domains.v1beta1.DnsSettings.CustomDns.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.googleDomainsDns = $root.google.cloud.domains.v1beta1.DnsSettings.GoogleDomainsDns.decode(reader, reader.uint32()); + message.googleDomainsDns = $root.google.cloud.domains.v1beta1.DnsSettings.GoogleDomainsDns.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.glueRecords && message.glueRecords.length)) message.glueRecords = []; - message.glueRecords.push($root.google.cloud.domains.v1beta1.DnsSettings.GlueRecord.decode(reader, reader.uint32())); + message.glueRecords.push($root.google.cloud.domains.v1beta1.DnsSettings.GlueRecord.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22008,14 +22828,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DnsSettings.verify = function verify(message) { + DnsSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.customDns != null && message.hasOwnProperty("customDns")) { properties.dnsProvider = 1; { - var error = $root.google.cloud.domains.v1beta1.DnsSettings.CustomDns.verify(message.customDns); + var error = $root.google.cloud.domains.v1beta1.DnsSettings.CustomDns.verify(message.customDns, long + 1); if (error) return "customDns." + error; } @@ -22025,7 +22849,7 @@ return "dnsProvider: multiple values"; properties.dnsProvider = 1; { - var error = $root.google.cloud.domains.v1beta1.DnsSettings.GoogleDomainsDns.verify(message.googleDomainsDns); + var error = $root.google.cloud.domains.v1beta1.DnsSettings.GoogleDomainsDns.verify(message.googleDomainsDns, long + 1); if (error) return "googleDomainsDns." + error; } @@ -22034,7 +22858,7 @@ if (!Array.isArray(message.glueRecords)) return "glueRecords: array expected"; for (var i = 0; i < message.glueRecords.length; ++i) { - var error = $root.google.cloud.domains.v1beta1.DnsSettings.GlueRecord.verify(message.glueRecords[i]); + var error = $root.google.cloud.domains.v1beta1.DnsSettings.GlueRecord.verify(message.glueRecords[i], long + 1); if (error) return "glueRecords." + error; } @@ -22050,19 +22874,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.DnsSettings} DnsSettings */ - DnsSettings.fromObject = function fromObject(object) { + DnsSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.DnsSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.DnsSettings(); if (object.customDns != null) { if (typeof object.customDns !== "object") throw TypeError(".google.cloud.domains.v1beta1.DnsSettings.customDns: object expected"); - message.customDns = $root.google.cloud.domains.v1beta1.DnsSettings.CustomDns.fromObject(object.customDns); + message.customDns = $root.google.cloud.domains.v1beta1.DnsSettings.CustomDns.fromObject(object.customDns, long + 1); } if (object.googleDomainsDns != null) { if (typeof object.googleDomainsDns !== "object") throw TypeError(".google.cloud.domains.v1beta1.DnsSettings.googleDomainsDns: object expected"); - message.googleDomainsDns = $root.google.cloud.domains.v1beta1.DnsSettings.GoogleDomainsDns.fromObject(object.googleDomainsDns); + message.googleDomainsDns = $root.google.cloud.domains.v1beta1.DnsSettings.GoogleDomainsDns.fromObject(object.googleDomainsDns, long + 1); } if (object.glueRecords) { if (!Array.isArray(object.glueRecords)) @@ -22071,7 +22899,7 @@ for (var i = 0; i < object.glueRecords.length; ++i) { if (typeof object.glueRecords[i] !== "object") throw TypeError(".google.cloud.domains.v1beta1.DnsSettings.glueRecords: object expected"); - message.glueRecords[i] = $root.google.cloud.domains.v1beta1.DnsSettings.GlueRecord.fromObject(object.glueRecords[i]); + message.glueRecords[i] = $root.google.cloud.domains.v1beta1.DnsSettings.GlueRecord.fromObject(object.glueRecords[i], long + 1); } } return message; @@ -22159,7 +22987,7 @@ this.dsRecords = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22236,9 +23064,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomDns.decode = function decode(reader, length, error) { + CustomDns.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.DnsSettings.CustomDns(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22254,11 +23086,11 @@ case 2: { if (!(message.dsRecords && message.dsRecords.length)) message.dsRecords = []; - message.dsRecords.push($root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.decode(reader, reader.uint32())); + message.dsRecords.push($root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22289,9 +23121,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomDns.verify = function verify(message) { + CustomDns.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.nameServers != null && message.hasOwnProperty("nameServers")) { if (!Array.isArray(message.nameServers)) return "nameServers: array expected"; @@ -22303,7 +23139,7 @@ if (!Array.isArray(message.dsRecords)) return "dsRecords: array expected"; for (var i = 0; i < message.dsRecords.length; ++i) { - var error = $root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.verify(message.dsRecords[i]); + var error = $root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.verify(message.dsRecords[i], long + 1); if (error) return "dsRecords." + error; } @@ -22319,9 +23155,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.DnsSettings.CustomDns} CustomDns */ - CustomDns.fromObject = function fromObject(object) { + CustomDns.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.DnsSettings.CustomDns) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.DnsSettings.CustomDns(); if (object.nameServers) { if (!Array.isArray(object.nameServers)) @@ -22337,7 +23177,7 @@ for (var i = 0; i < object.dsRecords.length; ++i) { if (typeof object.dsRecords[i] !== "object") throw TypeError(".google.cloud.domains.v1beta1.DnsSettings.CustomDns.dsRecords: object expected"); - message.dsRecords[i] = $root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.fromObject(object.dsRecords[i]); + message.dsRecords[i] = $root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.fromObject(object.dsRecords[i], long + 1); } } return message; @@ -22426,7 +23266,7 @@ this.dsRecords = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22513,9 +23353,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GoogleDomainsDns.decode = function decode(reader, length, error) { + GoogleDomainsDns.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.DnsSettings.GoogleDomainsDns(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22535,11 +23379,11 @@ case 3: { if (!(message.dsRecords && message.dsRecords.length)) message.dsRecords = []; - message.dsRecords.push($root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.decode(reader, reader.uint32())); + message.dsRecords.push($root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22570,9 +23414,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GoogleDomainsDns.verify = function verify(message) { + GoogleDomainsDns.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.nameServers != null && message.hasOwnProperty("nameServers")) { if (!Array.isArray(message.nameServers)) return "nameServers: array expected"; @@ -22593,7 +23441,7 @@ if (!Array.isArray(message.dsRecords)) return "dsRecords: array expected"; for (var i = 0; i < message.dsRecords.length; ++i) { - var error = $root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.verify(message.dsRecords[i]); + var error = $root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.verify(message.dsRecords[i], long + 1); if (error) return "dsRecords." + error; } @@ -22609,9 +23457,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.DnsSettings.GoogleDomainsDns} GoogleDomainsDns */ - GoogleDomainsDns.fromObject = function fromObject(object) { + GoogleDomainsDns.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.DnsSettings.GoogleDomainsDns) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.DnsSettings.GoogleDomainsDns(); if (object.nameServers) { if (!Array.isArray(object.nameServers)) @@ -22647,7 +23499,7 @@ for (var i = 0; i < object.dsRecords.length; ++i) { if (typeof object.dsRecords[i] !== "object") throw TypeError(".google.cloud.domains.v1beta1.DnsSettings.GoogleDomainsDns.dsRecords: object expected"); - message.dsRecords[i] = $root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.fromObject(object.dsRecords[i]); + message.dsRecords[i] = $root.google.cloud.domains.v1beta1.DnsSettings.DsRecord.fromObject(object.dsRecords[i], long + 1); } } return message; @@ -22739,7 +23591,7 @@ function DsRecord(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22834,9 +23686,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DsRecord.decode = function decode(reader, length, error) { + DsRecord.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.DnsSettings.DsRecord(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22860,7 +23716,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22891,9 +23747,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DsRecord.verify = function verify(message) { + DsRecord.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.keyTag != null && message.hasOwnProperty("keyTag")) if (!$util.isInteger(message.keyTag)) return "keyTag: integer expected"; @@ -22946,9 +23806,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.DnsSettings.DsRecord} DsRecord */ - DsRecord.fromObject = function fromObject(object) { + DsRecord.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.DnsSettings.DsRecord) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.DnsSettings.DsRecord(); if (object.keyTag != null) message.keyTag = object.keyTag | 0; @@ -23214,7 +24078,7 @@ this.ipv6Addresses = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23301,9 +24165,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GlueRecord.decode = function decode(reader, length, error) { + GlueRecord.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.DnsSettings.GlueRecord(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23327,7 +24195,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23358,9 +24226,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GlueRecord.verify = function verify(message) { + GlueRecord.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.hostName != null && message.hasOwnProperty("hostName")) if (!$util.isString(message.hostName)) return "hostName: string expected"; @@ -23389,9 +24261,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.DnsSettings.GlueRecord} GlueRecord */ - GlueRecord.fromObject = function fromObject(object) { + GlueRecord.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.DnsSettings.GlueRecord) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.DnsSettings.GlueRecord(); if (object.hostName != null) message.hostName = String(object.hostName); @@ -23517,7 +24393,7 @@ function ContactSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23612,9 +24488,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ContactSettings.decode = function decode(reader, length, error) { + ContactSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.ContactSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23626,19 +24506,19 @@ break; } case 2: { - message.registrantContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.decode(reader, reader.uint32()); + message.registrantContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.adminContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.decode(reader, reader.uint32()); + message.adminContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.technicalContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.decode(reader, reader.uint32()); + message.technicalContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23669,9 +24549,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ContactSettings.verify = function verify(message) { + ContactSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.privacy != null && message.hasOwnProperty("privacy")) switch (message.privacy) { default: @@ -23683,17 +24567,17 @@ break; } if (message.registrantContact != null && message.hasOwnProperty("registrantContact")) { - var error = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.verify(message.registrantContact); + var error = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.verify(message.registrantContact, long + 1); if (error) return "registrantContact." + error; } if (message.adminContact != null && message.hasOwnProperty("adminContact")) { - var error = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.verify(message.adminContact); + var error = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.verify(message.adminContact, long + 1); if (error) return "adminContact." + error; } if (message.technicalContact != null && message.hasOwnProperty("technicalContact")) { - var error = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.verify(message.technicalContact); + var error = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.verify(message.technicalContact, long + 1); if (error) return "technicalContact." + error; } @@ -23708,9 +24592,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.ContactSettings} ContactSettings */ - ContactSettings.fromObject = function fromObject(object) { + ContactSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.ContactSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.ContactSettings(); switch (object.privacy) { default: @@ -23739,17 +24627,17 @@ if (object.registrantContact != null) { if (typeof object.registrantContact !== "object") throw TypeError(".google.cloud.domains.v1beta1.ContactSettings.registrantContact: object expected"); - message.registrantContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.fromObject(object.registrantContact); + message.registrantContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.fromObject(object.registrantContact, long + 1); } if (object.adminContact != null) { if (typeof object.adminContact !== "object") throw TypeError(".google.cloud.domains.v1beta1.ContactSettings.adminContact: object expected"); - message.adminContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.fromObject(object.adminContact); + message.adminContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.fromObject(object.adminContact, long + 1); } if (object.technicalContact != null) { if (typeof object.technicalContact !== "object") throw TypeError(".google.cloud.domains.v1beta1.ContactSettings.technicalContact: object expected"); - message.technicalContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.fromObject(object.technicalContact); + message.technicalContact = $root.google.cloud.domains.v1beta1.ContactSettings.Contact.fromObject(object.technicalContact, long + 1); } return message; }; @@ -23833,7 +24721,7 @@ function Contact(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23928,9 +24816,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Contact.decode = function decode(reader, length, error) { + Contact.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.ContactSettings.Contact(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23938,7 +24830,7 @@ break; switch (tag >>> 3) { case 1: { - message.postalAddress = $root.google.type.PostalAddress.decode(reader, reader.uint32()); + message.postalAddress = $root.google.type.PostalAddress.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -23954,7 +24846,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23985,11 +24877,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Contact.verify = function verify(message) { + Contact.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.postalAddress != null && message.hasOwnProperty("postalAddress")) { - var error = $root.google.type.PostalAddress.verify(message.postalAddress); + var error = $root.google.type.PostalAddress.verify(message.postalAddress, long + 1); if (error) return "postalAddress." + error; } @@ -24013,14 +24909,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.ContactSettings.Contact} Contact */ - Contact.fromObject = function fromObject(object) { + Contact.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.ContactSettings.Contact) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.ContactSettings.Contact(); if (object.postalAddress != null) { if (typeof object.postalAddress !== "object") throw TypeError(".google.cloud.domains.v1beta1.ContactSettings.Contact.postalAddress: object expected"); - message.postalAddress = $root.google.type.PostalAddress.fromObject(object.postalAddress); + message.postalAddress = $root.google.type.PostalAddress.fromObject(object.postalAddress, long + 1); } if (object.email != null) message.email = String(object.email); @@ -24114,7 +25014,7 @@ function SearchDomainsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24189,9 +25089,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchDomainsRequest.decode = function decode(reader, length, error) { + SearchDomainsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.SearchDomainsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24207,7 +25111,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24238,9 +25142,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchDomainsRequest.verify = function verify(message) { + SearchDomainsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.query != null && message.hasOwnProperty("query")) if (!$util.isString(message.query)) return "query: string expected"; @@ -24258,9 +25166,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.SearchDomainsRequest} SearchDomainsRequest */ - SearchDomainsRequest.fromObject = function fromObject(object) { + SearchDomainsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.SearchDomainsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.SearchDomainsRequest(); if (object.query != null) message.query = String(object.query); @@ -24343,7 +25255,7 @@ this.registerParameters = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24409,9 +25321,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchDomainsResponse.decode = function decode(reader, length, error) { + SearchDomainsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.SearchDomainsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24421,11 +25337,11 @@ case 1: { if (!(message.registerParameters && message.registerParameters.length)) message.registerParameters = []; - message.registerParameters.push($root.google.cloud.domains.v1beta1.RegisterParameters.decode(reader, reader.uint32())); + message.registerParameters.push($root.google.cloud.domains.v1beta1.RegisterParameters.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24456,14 +25372,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchDomainsResponse.verify = function verify(message) { + SearchDomainsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registerParameters != null && message.hasOwnProperty("registerParameters")) { if (!Array.isArray(message.registerParameters)) return "registerParameters: array expected"; for (var i = 0; i < message.registerParameters.length; ++i) { - var error = $root.google.cloud.domains.v1beta1.RegisterParameters.verify(message.registerParameters[i]); + var error = $root.google.cloud.domains.v1beta1.RegisterParameters.verify(message.registerParameters[i], long + 1); if (error) return "registerParameters." + error; } @@ -24479,9 +25399,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.SearchDomainsResponse} SearchDomainsResponse */ - SearchDomainsResponse.fromObject = function fromObject(object) { + SearchDomainsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.SearchDomainsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.SearchDomainsResponse(); if (object.registerParameters) { if (!Array.isArray(object.registerParameters)) @@ -24490,7 +25414,7 @@ for (var i = 0; i < object.registerParameters.length; ++i) { if (typeof object.registerParameters[i] !== "object") throw TypeError(".google.cloud.domains.v1beta1.SearchDomainsResponse.registerParameters: object expected"); - message.registerParameters[i] = $root.google.cloud.domains.v1beta1.RegisterParameters.fromObject(object.registerParameters[i]); + message.registerParameters[i] = $root.google.cloud.domains.v1beta1.RegisterParameters.fromObject(object.registerParameters[i], long + 1); } } return message; @@ -24569,7 +25493,7 @@ function RetrieveRegisterParametersRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24644,9 +25568,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveRegisterParametersRequest.decode = function decode(reader, length, error) { + RetrieveRegisterParametersRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24662,7 +25590,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24693,9 +25621,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveRegisterParametersRequest.verify = function verify(message) { + RetrieveRegisterParametersRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -24713,9 +25645,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest} RetrieveRegisterParametersRequest */ - RetrieveRegisterParametersRequest.fromObject = function fromObject(object) { + RetrieveRegisterParametersRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -24797,7 +25733,7 @@ function RetrieveRegisterParametersResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24862,9 +25798,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveRegisterParametersResponse.decode = function decode(reader, length, error) { + RetrieveRegisterParametersResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.RetrieveRegisterParametersResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24872,11 +25812,11 @@ break; switch (tag >>> 3) { case 1: { - message.registerParameters = $root.google.cloud.domains.v1beta1.RegisterParameters.decode(reader, reader.uint32()); + message.registerParameters = $root.google.cloud.domains.v1beta1.RegisterParameters.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24907,11 +25847,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveRegisterParametersResponse.verify = function verify(message) { + RetrieveRegisterParametersResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registerParameters != null && message.hasOwnProperty("registerParameters")) { - var error = $root.google.cloud.domains.v1beta1.RegisterParameters.verify(message.registerParameters); + var error = $root.google.cloud.domains.v1beta1.RegisterParameters.verify(message.registerParameters, long + 1); if (error) return "registerParameters." + error; } @@ -24926,14 +25870,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.RetrieveRegisterParametersResponse} RetrieveRegisterParametersResponse */ - RetrieveRegisterParametersResponse.fromObject = function fromObject(object) { + RetrieveRegisterParametersResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.RetrieveRegisterParametersResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.RetrieveRegisterParametersResponse(); if (object.registerParameters != null) { if (typeof object.registerParameters !== "object") throw TypeError(".google.cloud.domains.v1beta1.RetrieveRegisterParametersResponse.registerParameters: object expected"); - message.registerParameters = $root.google.cloud.domains.v1beta1.RegisterParameters.fromObject(object.registerParameters); + message.registerParameters = $root.google.cloud.domains.v1beta1.RegisterParameters.fromObject(object.registerParameters, long + 1); } return message; }; @@ -25014,7 +25962,7 @@ this.contactNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25137,9 +26085,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RegisterDomainRequest.decode = function decode(reader, length, error) { + RegisterDomainRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.RegisterDomainRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25151,7 +26103,7 @@ break; } case 2: { - message.registration = $root.google.cloud.domains.v1beta1.Registration.decode(reader, reader.uint32()); + message.registration = $root.google.cloud.domains.v1beta1.Registration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -25177,7 +26129,7 @@ break; } case 5: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -25185,7 +26137,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25216,14 +26168,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RegisterDomainRequest.verify = function verify(message) { + RegisterDomainRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.registration != null && message.hasOwnProperty("registration")) { - var error = $root.google.cloud.domains.v1beta1.Registration.verify(message.registration); + var error = $root.google.cloud.domains.v1beta1.Registration.verify(message.registration, long + 1); if (error) return "registration." + error; } @@ -25252,7 +26208,7 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } @@ -25270,16 +26226,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.RegisterDomainRequest} RegisterDomainRequest */ - RegisterDomainRequest.fromObject = function fromObject(object) { + RegisterDomainRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.RegisterDomainRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.RegisterDomainRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.registration != null) { if (typeof object.registration !== "object") throw TypeError(".google.cloud.domains.v1beta1.RegisterDomainRequest.registration: object expected"); - message.registration = $root.google.cloud.domains.v1beta1.Registration.fromObject(object.registration); + message.registration = $root.google.cloud.domains.v1beta1.Registration.fromObject(object.registration, long + 1); } if (object.domainNotices) { if (!Array.isArray(object.domainNotices)) @@ -25326,7 +26286,7 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1beta1.RegisterDomainRequest.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -25427,7 +26387,7 @@ function RetrieveTransferParametersRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25502,9 +26462,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveTransferParametersRequest.decode = function decode(reader, length, error) { + RetrieveTransferParametersRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25520,7 +26484,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25551,9 +26515,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveTransferParametersRequest.verify = function verify(message) { + RetrieveTransferParametersRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -25571,9 +26539,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.RetrieveTransferParametersRequest} RetrieveTransferParametersRequest */ - RetrieveTransferParametersRequest.fromObject = function fromObject(object) { + RetrieveTransferParametersRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -25655,7 +26627,7 @@ function RetrieveTransferParametersResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25720,9 +26692,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveTransferParametersResponse.decode = function decode(reader, length, error) { + RetrieveTransferParametersResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.RetrieveTransferParametersResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25730,11 +26706,11 @@ break; switch (tag >>> 3) { case 1: { - message.transferParameters = $root.google.cloud.domains.v1beta1.TransferParameters.decode(reader, reader.uint32()); + message.transferParameters = $root.google.cloud.domains.v1beta1.TransferParameters.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25765,11 +26741,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveTransferParametersResponse.verify = function verify(message) { + RetrieveTransferParametersResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.transferParameters != null && message.hasOwnProperty("transferParameters")) { - var error = $root.google.cloud.domains.v1beta1.TransferParameters.verify(message.transferParameters); + var error = $root.google.cloud.domains.v1beta1.TransferParameters.verify(message.transferParameters, long + 1); if (error) return "transferParameters." + error; } @@ -25784,14 +26764,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.RetrieveTransferParametersResponse} RetrieveTransferParametersResponse */ - RetrieveTransferParametersResponse.fromObject = function fromObject(object) { + RetrieveTransferParametersResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.RetrieveTransferParametersResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.RetrieveTransferParametersResponse(); if (object.transferParameters != null) { if (typeof object.transferParameters !== "object") throw TypeError(".google.cloud.domains.v1beta1.RetrieveTransferParametersResponse.transferParameters: object expected"); - message.transferParameters = $root.google.cloud.domains.v1beta1.TransferParameters.fromObject(object.transferParameters); + message.transferParameters = $root.google.cloud.domains.v1beta1.TransferParameters.fromObject(object.transferParameters, long + 1); } return message; }; @@ -25871,7 +26855,7 @@ this.contactNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25990,9 +26974,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TransferDomainRequest.decode = function decode(reader, length, error) { + TransferDomainRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.TransferDomainRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26004,7 +26992,7 @@ break; } case 2: { - message.registration = $root.google.cloud.domains.v1beta1.Registration.decode(reader, reader.uint32()); + message.registration = $root.google.cloud.domains.v1beta1.Registration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -26019,11 +27007,11 @@ break; } case 4: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.authorizationCode = $root.google.cloud.domains.v1beta1.AuthorizationCode.decode(reader, reader.uint32()); + message.authorizationCode = $root.google.cloud.domains.v1beta1.AuthorizationCode.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -26031,7 +27019,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26062,14 +27050,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TransferDomainRequest.verify = function verify(message) { + TransferDomainRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.registration != null && message.hasOwnProperty("registration")) { - var error = $root.google.cloud.domains.v1beta1.Registration.verify(message.registration); + var error = $root.google.cloud.domains.v1beta1.Registration.verify(message.registration, long + 1); if (error) return "registration." + error; } @@ -26086,12 +27078,12 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } if (message.authorizationCode != null && message.hasOwnProperty("authorizationCode")) { - var error = $root.google.cloud.domains.v1beta1.AuthorizationCode.verify(message.authorizationCode); + var error = $root.google.cloud.domains.v1beta1.AuthorizationCode.verify(message.authorizationCode, long + 1); if (error) return "authorizationCode." + error; } @@ -26109,16 +27101,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.TransferDomainRequest} TransferDomainRequest */ - TransferDomainRequest.fromObject = function fromObject(object) { + TransferDomainRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.TransferDomainRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.TransferDomainRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.registration != null) { if (typeof object.registration !== "object") throw TypeError(".google.cloud.domains.v1beta1.TransferDomainRequest.registration: object expected"); - message.registration = $root.google.cloud.domains.v1beta1.Registration.fromObject(object.registration); + message.registration = $root.google.cloud.domains.v1beta1.Registration.fromObject(object.registration, long + 1); } if (object.contactNotices) { if (!Array.isArray(object.contactNotices)) @@ -26144,12 +27140,12 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1beta1.TransferDomainRequest.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } if (object.authorizationCode != null) { if (typeof object.authorizationCode !== "object") throw TypeError(".google.cloud.domains.v1beta1.TransferDomainRequest.authorizationCode: object expected"); - message.authorizationCode = $root.google.cloud.domains.v1beta1.AuthorizationCode.fromObject(object.authorizationCode); + message.authorizationCode = $root.google.cloud.domains.v1beta1.AuthorizationCode.fromObject(object.authorizationCode, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -26248,7 +27244,7 @@ function ListRegistrationsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26343,9 +27339,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListRegistrationsRequest.decode = function decode(reader, length, error) { + ListRegistrationsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.ListRegistrationsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26369,7 +27369,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26400,9 +27400,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListRegistrationsRequest.verify = function verify(message) { + ListRegistrationsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -26426,9 +27430,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.ListRegistrationsRequest} ListRegistrationsRequest */ - ListRegistrationsRequest.fromObject = function fromObject(object) { + ListRegistrationsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.ListRegistrationsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.ListRegistrationsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -26522,7 +27530,7 @@ this.registrations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26598,9 +27606,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListRegistrationsResponse.decode = function decode(reader, length, error) { + ListRegistrationsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.ListRegistrationsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26610,7 +27622,7 @@ case 1: { if (!(message.registrations && message.registrations.length)) message.registrations = []; - message.registrations.push($root.google.cloud.domains.v1beta1.Registration.decode(reader, reader.uint32())); + message.registrations.push($root.google.cloud.domains.v1beta1.Registration.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -26618,7 +27630,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26649,14 +27661,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListRegistrationsResponse.verify = function verify(message) { + ListRegistrationsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registrations != null && message.hasOwnProperty("registrations")) { if (!Array.isArray(message.registrations)) return "registrations: array expected"; for (var i = 0; i < message.registrations.length; ++i) { - var error = $root.google.cloud.domains.v1beta1.Registration.verify(message.registrations[i]); + var error = $root.google.cloud.domains.v1beta1.Registration.verify(message.registrations[i], long + 1); if (error) return "registrations." + error; } @@ -26675,9 +27691,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.ListRegistrationsResponse} ListRegistrationsResponse */ - ListRegistrationsResponse.fromObject = function fromObject(object) { + ListRegistrationsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.ListRegistrationsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.ListRegistrationsResponse(); if (object.registrations) { if (!Array.isArray(object.registrations)) @@ -26686,7 +27706,7 @@ for (var i = 0; i < object.registrations.length; ++i) { if (typeof object.registrations[i] !== "object") throw TypeError(".google.cloud.domains.v1beta1.ListRegistrationsResponse.registrations: object expected"); - message.registrations[i] = $root.google.cloud.domains.v1beta1.Registration.fromObject(object.registrations[i]); + message.registrations[i] = $root.google.cloud.domains.v1beta1.Registration.fromObject(object.registrations[i], long + 1); } } if (object.nextPageToken != null) @@ -26770,7 +27790,7 @@ function GetRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26835,9 +27855,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetRegistrationRequest.decode = function decode(reader, length, error) { + GetRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.GetRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26849,7 +27873,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26880,9 +27904,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetRegistrationRequest.verify = function verify(message) { + GetRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -26897,9 +27925,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.GetRegistrationRequest} GetRegistrationRequest */ - GetRegistrationRequest.fromObject = function fromObject(object) { + GetRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.GetRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.GetRegistrationRequest(); if (object.name != null) message.name = String(object.name); @@ -26976,7 +28008,7 @@ function UpdateRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27051,9 +28083,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateRegistrationRequest.decode = function decode(reader, length, error) { + UpdateRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.UpdateRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27061,15 +28097,15 @@ break; switch (tag >>> 3) { case 1: { - message.registration = $root.google.cloud.domains.v1beta1.Registration.decode(reader, reader.uint32()); + message.registration = $root.google.cloud.domains.v1beta1.Registration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27100,16 +28136,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateRegistrationRequest.verify = function verify(message) { + UpdateRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) { - var error = $root.google.cloud.domains.v1beta1.Registration.verify(message.registration); + var error = $root.google.cloud.domains.v1beta1.Registration.verify(message.registration, long + 1); if (error) return "registration." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -27124,19 +28164,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.UpdateRegistrationRequest} UpdateRegistrationRequest */ - UpdateRegistrationRequest.fromObject = function fromObject(object) { + UpdateRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.UpdateRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.UpdateRegistrationRequest(); if (object.registration != null) { if (typeof object.registration !== "object") throw TypeError(".google.cloud.domains.v1beta1.UpdateRegistrationRequest.registration: object expected"); - message.registration = $root.google.cloud.domains.v1beta1.Registration.fromObject(object.registration); + message.registration = $root.google.cloud.domains.v1beta1.Registration.fromObject(object.registration, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1beta1.UpdateRegistrationRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -27216,7 +28260,7 @@ function ConfigureManagementSettingsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27301,9 +28345,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConfigureManagementSettingsRequest.decode = function decode(reader, length, error) { + ConfigureManagementSettingsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27315,15 +28363,15 @@ break; } case 2: { - message.managementSettings = $root.google.cloud.domains.v1beta1.ManagementSettings.decode(reader, reader.uint32()); + message.managementSettings = $root.google.cloud.domains.v1beta1.ManagementSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27354,19 +28402,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConfigureManagementSettingsRequest.verify = function verify(message) { + ConfigureManagementSettingsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; if (message.managementSettings != null && message.hasOwnProperty("managementSettings")) { - var error = $root.google.cloud.domains.v1beta1.ManagementSettings.verify(message.managementSettings); + var error = $root.google.cloud.domains.v1beta1.ManagementSettings.verify(message.managementSettings, long + 1); if (error) return "managementSettings." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -27381,21 +28433,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest} ConfigureManagementSettingsRequest */ - ConfigureManagementSettingsRequest.fromObject = function fromObject(object) { + ConfigureManagementSettingsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest(); if (object.registration != null) message.registration = String(object.registration); if (object.managementSettings != null) { if (typeof object.managementSettings !== "object") throw TypeError(".google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest.managementSettings: object expected"); - message.managementSettings = $root.google.cloud.domains.v1beta1.ManagementSettings.fromObject(object.managementSettings); + message.managementSettings = $root.google.cloud.domains.v1beta1.ManagementSettings.fromObject(object.managementSettings, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -27479,7 +28535,7 @@ function ConfigureDnsSettingsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27574,9 +28630,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConfigureDnsSettingsRequest.decode = function decode(reader, length, error) { + ConfigureDnsSettingsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27588,11 +28648,11 @@ break; } case 2: { - message.dnsSettings = $root.google.cloud.domains.v1beta1.DnsSettings.decode(reader, reader.uint32()); + message.dnsSettings = $root.google.cloud.domains.v1beta1.DnsSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -27600,7 +28660,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27631,19 +28691,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConfigureDnsSettingsRequest.verify = function verify(message) { + ConfigureDnsSettingsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; if (message.dnsSettings != null && message.hasOwnProperty("dnsSettings")) { - var error = $root.google.cloud.domains.v1beta1.DnsSettings.verify(message.dnsSettings); + var error = $root.google.cloud.domains.v1beta1.DnsSettings.verify(message.dnsSettings, long + 1); if (error) return "dnsSettings." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -27661,21 +28725,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest} ConfigureDnsSettingsRequest */ - ConfigureDnsSettingsRequest.fromObject = function fromObject(object) { + ConfigureDnsSettingsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest(); if (object.registration != null) message.registration = String(object.registration); if (object.dnsSettings != null) { if (typeof object.dnsSettings !== "object") throw TypeError(".google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest.dnsSettings: object expected"); - message.dnsSettings = $root.google.cloud.domains.v1beta1.DnsSettings.fromObject(object.dnsSettings); + message.dnsSettings = $root.google.cloud.domains.v1beta1.DnsSettings.fromObject(object.dnsSettings, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -27766,7 +28834,7 @@ this.contactNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27875,9 +28943,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConfigureContactSettingsRequest.decode = function decode(reader, length, error) { + ConfigureContactSettingsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27889,11 +28961,11 @@ break; } case 2: { - message.contactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.decode(reader, reader.uint32()); + message.contactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -27912,7 +28984,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27943,19 +29015,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConfigureContactSettingsRequest.verify = function verify(message) { + ConfigureContactSettingsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; if (message.contactSettings != null && message.hasOwnProperty("contactSettings")) { - var error = $root.google.cloud.domains.v1beta1.ContactSettings.verify(message.contactSettings); + var error = $root.google.cloud.domains.v1beta1.ContactSettings.verify(message.contactSettings, long + 1); if (error) return "contactSettings." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -27985,21 +29061,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.ConfigureContactSettingsRequest} ConfigureContactSettingsRequest */ - ConfigureContactSettingsRequest.fromObject = function fromObject(object) { + ConfigureContactSettingsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest(); if (object.registration != null) message.registration = String(object.registration); if (object.contactSettings != null) { if (typeof object.contactSettings !== "object") throw TypeError(".google.cloud.domains.v1beta1.ConfigureContactSettingsRequest.contactSettings: object expected"); - message.contactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.fromObject(object.contactSettings); + message.contactSettings = $root.google.cloud.domains.v1beta1.ContactSettings.fromObject(object.contactSettings, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.domains.v1beta1.ConfigureContactSettingsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.contactNotices) { if (!Array.isArray(object.contactNotices)) @@ -28113,7 +29193,7 @@ function ExportRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28178,9 +29258,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportRegistrationRequest.decode = function decode(reader, length, error) { + ExportRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.ExportRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28192,7 +29276,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28223,9 +29307,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportRegistrationRequest.verify = function verify(message) { + ExportRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -28240,9 +29328,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.ExportRegistrationRequest} ExportRegistrationRequest */ - ExportRegistrationRequest.fromObject = function fromObject(object) { + ExportRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.ExportRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.ExportRegistrationRequest(); if (object.name != null) message.name = String(object.name); @@ -28318,7 +29410,7 @@ function DeleteRegistrationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28383,9 +29475,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteRegistrationRequest.decode = function decode(reader, length, error) { + DeleteRegistrationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.DeleteRegistrationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28397,7 +29493,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28428,9 +29524,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteRegistrationRequest.verify = function verify(message) { + DeleteRegistrationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -28445,9 +29545,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.DeleteRegistrationRequest} DeleteRegistrationRequest */ - DeleteRegistrationRequest.fromObject = function fromObject(object) { + DeleteRegistrationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.DeleteRegistrationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.DeleteRegistrationRequest(); if (object.name != null) message.name = String(object.name); @@ -28523,7 +29627,7 @@ function RetrieveAuthorizationCodeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28588,9 +29692,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RetrieveAuthorizationCodeRequest.decode = function decode(reader, length, error) { + RetrieveAuthorizationCodeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28602,7 +29710,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28633,9 +29741,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RetrieveAuthorizationCodeRequest.verify = function verify(message) { + RetrieveAuthorizationCodeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; @@ -28650,9 +29762,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest} RetrieveAuthorizationCodeRequest */ - RetrieveAuthorizationCodeRequest.fromObject = function fromObject(object) { + RetrieveAuthorizationCodeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest(); if (object.registration != null) message.registration = String(object.registration); @@ -28728,7 +29844,7 @@ function ResetAuthorizationCodeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28793,9 +29909,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResetAuthorizationCodeRequest.decode = function decode(reader, length, error) { + ResetAuthorizationCodeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28807,7 +29927,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28838,9 +29958,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResetAuthorizationCodeRequest.verify = function verify(message) { + ResetAuthorizationCodeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.registration != null && message.hasOwnProperty("registration")) if (!$util.isString(message.registration)) return "registration: string expected"; @@ -28855,9 +29979,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest} ResetAuthorizationCodeRequest */ - ResetAuthorizationCodeRequest.fromObject = function fromObject(object) { + ResetAuthorizationCodeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest(); if (object.registration != null) message.registration = String(object.registration); @@ -28939,7 +30067,7 @@ this.domainNotices = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29052,9 +30180,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RegisterParameters.decode = function decode(reader, length, error) { + RegisterParameters.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.RegisterParameters(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29092,11 +30224,11 @@ break; } case 5: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29127,9 +30259,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RegisterParameters.verify = function verify(message) { + RegisterParameters.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -29171,7 +30307,7 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } @@ -29186,9 +30322,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.RegisterParameters} RegisterParameters */ - RegisterParameters.fromObject = function fromObject(object) { + RegisterParameters.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.RegisterParameters) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.RegisterParameters(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -29273,7 +30413,7 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1beta1.RegisterParameters.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } return message; }; @@ -29395,7 +30535,7 @@ this.supportedPrivacy = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29515,9 +30655,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TransferParameters.decode = function decode(reader, length, error) { + TransferParameters.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.TransferParameters(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29554,11 +30698,11 @@ break; } case 6: { - message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32()); + message.yearlyPrice = $root.google.type.Money.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29589,9 +30733,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TransferParameters.verify = function verify(message) { + TransferParameters.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.domainName != null && message.hasOwnProperty("domainName")) if (!$util.isString(message.domainName)) return "domainName: string expected"; @@ -29629,7 +30777,7 @@ } } if (message.yearlyPrice != null && message.hasOwnProperty("yearlyPrice")) { - var error = $root.google.type.Money.verify(message.yearlyPrice); + var error = $root.google.type.Money.verify(message.yearlyPrice, long + 1); if (error) return "yearlyPrice." + error; } @@ -29644,9 +30792,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.TransferParameters} TransferParameters */ - TransferParameters.fromObject = function fromObject(object) { + TransferParameters.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.TransferParameters) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.TransferParameters(); if (object.domainName != null) message.domainName = String(object.domainName); @@ -29711,7 +30863,7 @@ if (object.yearlyPrice != null) { if (typeof object.yearlyPrice !== "object") throw TypeError(".google.cloud.domains.v1beta1.TransferParameters.yearlyPrice: object expected"); - message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice); + message.yearlyPrice = $root.google.type.Money.fromObject(object.yearlyPrice, long + 1); } return message; }; @@ -29809,7 +30961,7 @@ function AuthorizationCode(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29874,9 +31026,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AuthorizationCode.decode = function decode(reader, length, error) { + AuthorizationCode.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.AuthorizationCode(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29888,7 +31044,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29919,9 +31075,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AuthorizationCode.verify = function verify(message) { + AuthorizationCode.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.code != null && message.hasOwnProperty("code")) if (!$util.isString(message.code)) return "code: string expected"; @@ -29936,9 +31096,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.AuthorizationCode} AuthorizationCode */ - AuthorizationCode.fromObject = function fromObject(object) { + AuthorizationCode.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.AuthorizationCode) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.AuthorizationCode(); if (object.code != null) message.code = String(object.code); @@ -30019,7 +31183,7 @@ function OperationMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30134,9 +31298,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationMetadata.decode = function decode(reader, length, error) { + OperationMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.domains.v1beta1.OperationMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30144,11 +31312,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -30168,7 +31336,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30199,16 +31367,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationMetadata.verify = function verify(message) { + OperationMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -30235,19 +31407,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.domains.v1beta1.OperationMetadata} OperationMetadata */ - OperationMetadata.fromObject = function fromObject(object) { + OperationMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.domains.v1beta1.OperationMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.domains.v1beta1.OperationMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.domains.v1beta1.OperationMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.domains.v1beta1.OperationMetadata.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } if (object.target != null) message.target = String(object.target); @@ -30427,7 +31603,7 @@ this.rules = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30503,9 +31679,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Http.decode = function decode(reader, length, error) { + Http.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30515,7 +31695,7 @@ case 1: { if (!(message.rules && message.rules.length)) message.rules = []; - message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -30523,7 +31703,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30554,14 +31734,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Http.verify = function verify(message) { + Http.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rules != null && message.hasOwnProperty("rules")) { if (!Array.isArray(message.rules)) return "rules: array expected"; for (var i = 0; i < message.rules.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.rules[i]); + var error = $root.google.api.HttpRule.verify(message.rules[i], long + 1); if (error) return "rules." + error; } @@ -30580,9 +31764,13 @@ * @param {Object.} object Plain object * @returns {google.api.Http} Http */ - Http.fromObject = function fromObject(object) { + Http.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Http) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Http(); if (object.rules) { if (!Array.isArray(object.rules)) @@ -30591,7 +31779,7 @@ for (var i = 0; i < object.rules.length; ++i) { if (typeof object.rules[i] !== "object") throw TypeError(".google.api.Http.rules: object expected"); - message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); + message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i], long + 1); } } if (object.fullyDecodeReservedExpansion != null) @@ -30685,7 +31873,7 @@ this.additionalBindings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30855,9 +32043,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpRule.decode = function decode(reader, length, error) { + HttpRule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30889,7 +32081,7 @@ break; } case 8: { - message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -30903,11 +32095,11 @@ case 11: { if (!(message.additionalBindings && message.additionalBindings.length)) message.additionalBindings = []; - message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30938,9 +32130,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - HttpRule.verify = function verify(message) { + HttpRule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) @@ -30983,7 +32179,7 @@ return "pattern: multiple values"; properties.pattern = 1; { - var error = $root.google.api.CustomHttpPattern.verify(message.custom); + var error = $root.google.api.CustomHttpPattern.verify(message.custom, long + 1); if (error) return "custom." + error; } @@ -30998,7 +32194,7 @@ if (!Array.isArray(message.additionalBindings)) return "additionalBindings: array expected"; for (var i = 0; i < message.additionalBindings.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); + var error = $root.google.api.HttpRule.verify(message.additionalBindings[i], long + 1); if (error) return "additionalBindings." + error; } @@ -31014,9 +32210,13 @@ * @param {Object.} object Plain object * @returns {google.api.HttpRule} HttpRule */ - HttpRule.fromObject = function fromObject(object) { + HttpRule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.HttpRule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.HttpRule(); if (object.selector != null) message.selector = String(object.selector); @@ -31033,7 +32233,7 @@ if (object.custom != null) { if (typeof object.custom !== "object") throw TypeError(".google.api.HttpRule.custom: object expected"); - message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); + message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom, long + 1); } if (object.body != null) message.body = String(object.body); @@ -31046,7 +32246,7 @@ for (var i = 0; i < object.additionalBindings.length; ++i) { if (typeof object.additionalBindings[i] !== "object") throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); - message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); + message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i], long + 1); } } return message; @@ -31166,7 +32366,7 @@ function CustomHttpPattern(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31241,9 +32441,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomHttpPattern.decode = function decode(reader, length, error) { + CustomHttpPattern.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31259,7 +32463,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31290,9 +32494,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomHttpPattern.verify = function verify(message) { + CustomHttpPattern.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.kind != null && message.hasOwnProperty("kind")) if (!$util.isString(message.kind)) return "kind: string expected"; @@ -31310,9 +32518,13 @@ * @param {Object.} object Plain object * @returns {google.api.CustomHttpPattern} CustomHttpPattern */ - CustomHttpPattern.fromObject = function fromObject(object) { + CustomHttpPattern.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CustomHttpPattern) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CustomHttpPattern(); if (object.kind != null) message.kind = String(object.kind); @@ -31397,7 +32609,7 @@ this.destinations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31486,9 +32698,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CommonLanguageSettings.decode = function decode(reader, length, error) { + CommonLanguageSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CommonLanguageSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31511,11 +32727,11 @@ break; } case 3: { - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32()); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31546,9 +32762,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CommonLanguageSettings.verify = function verify(message) { + CommonLanguageSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.referenceDocsUri != null && message.hasOwnProperty("referenceDocsUri")) if (!$util.isString(message.referenceDocsUri)) return "referenceDocsUri: string expected"; @@ -31566,7 +32786,7 @@ } } if (message.selectiveGapicGeneration != null && message.hasOwnProperty("selectiveGapicGeneration")) { - var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration); + var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration, long + 1); if (error) return "selectiveGapicGeneration." + error; } @@ -31581,9 +32801,13 @@ * @param {Object.} object Plain object * @returns {google.api.CommonLanguageSettings} CommonLanguageSettings */ - CommonLanguageSettings.fromObject = function fromObject(object) { + CommonLanguageSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CommonLanguageSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CommonLanguageSettings(); if (object.referenceDocsUri != null) message.referenceDocsUri = String(object.referenceDocsUri); @@ -31615,7 +32839,7 @@ if (object.selectiveGapicGeneration != null) { if (typeof object.selectiveGapicGeneration !== "object") throw TypeError(".google.api.CommonLanguageSettings.selectiveGapicGeneration: object expected"); - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration, long + 1); } return message; }; @@ -31710,7 +32934,7 @@ function ClientLibrarySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31875,9 +33099,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClientLibrarySettings.decode = function decode(reader, length, error) { + ClientLibrarySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ClientLibrarySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31897,39 +33125,39 @@ break; } case 21: { - message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32()); + message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32()); + message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 23: { - message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32()); + message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 24: { - message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32()); + message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { - message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32()); + message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { - message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32()); + message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 27: { - message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32()); + message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 28: { - message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32()); + message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31960,9 +33188,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClientLibrarySettings.verify = function verify(message) { + ClientLibrarySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.version != null && message.hasOwnProperty("version")) if (!$util.isString(message.version)) return "version: string expected"; @@ -31984,42 +33216,42 @@ if (typeof message.restNumericEnums !== "boolean") return "restNumericEnums: boolean expected"; if (message.javaSettings != null && message.hasOwnProperty("javaSettings")) { - var error = $root.google.api.JavaSettings.verify(message.javaSettings); + var error = $root.google.api.JavaSettings.verify(message.javaSettings, long + 1); if (error) return "javaSettings." + error; } if (message.cppSettings != null && message.hasOwnProperty("cppSettings")) { - var error = $root.google.api.CppSettings.verify(message.cppSettings); + var error = $root.google.api.CppSettings.verify(message.cppSettings, long + 1); if (error) return "cppSettings." + error; } if (message.phpSettings != null && message.hasOwnProperty("phpSettings")) { - var error = $root.google.api.PhpSettings.verify(message.phpSettings); + var error = $root.google.api.PhpSettings.verify(message.phpSettings, long + 1); if (error) return "phpSettings." + error; } if (message.pythonSettings != null && message.hasOwnProperty("pythonSettings")) { - var error = $root.google.api.PythonSettings.verify(message.pythonSettings); + var error = $root.google.api.PythonSettings.verify(message.pythonSettings, long + 1); if (error) return "pythonSettings." + error; } if (message.nodeSettings != null && message.hasOwnProperty("nodeSettings")) { - var error = $root.google.api.NodeSettings.verify(message.nodeSettings); + var error = $root.google.api.NodeSettings.verify(message.nodeSettings, long + 1); if (error) return "nodeSettings." + error; } if (message.dotnetSettings != null && message.hasOwnProperty("dotnetSettings")) { - var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings); + var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings, long + 1); if (error) return "dotnetSettings." + error; } if (message.rubySettings != null && message.hasOwnProperty("rubySettings")) { - var error = $root.google.api.RubySettings.verify(message.rubySettings); + var error = $root.google.api.RubySettings.verify(message.rubySettings, long + 1); if (error) return "rubySettings." + error; } if (message.goSettings != null && message.hasOwnProperty("goSettings")) { - var error = $root.google.api.GoSettings.verify(message.goSettings); + var error = $root.google.api.GoSettings.verify(message.goSettings, long + 1); if (error) return "goSettings." + error; } @@ -32034,9 +33266,13 @@ * @param {Object.} object Plain object * @returns {google.api.ClientLibrarySettings} ClientLibrarySettings */ - ClientLibrarySettings.fromObject = function fromObject(object) { + ClientLibrarySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ClientLibrarySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ClientLibrarySettings(); if (object.version != null) message.version = String(object.version); @@ -32085,42 +33321,42 @@ if (object.javaSettings != null) { if (typeof object.javaSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.javaSettings: object expected"); - message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings); + message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings, long + 1); } if (object.cppSettings != null) { if (typeof object.cppSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.cppSettings: object expected"); - message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings); + message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings, long + 1); } if (object.phpSettings != null) { if (typeof object.phpSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.phpSettings: object expected"); - message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings); + message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings, long + 1); } if (object.pythonSettings != null) { if (typeof object.pythonSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.pythonSettings: object expected"); - message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings); + message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings, long + 1); } if (object.nodeSettings != null) { if (typeof object.nodeSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.nodeSettings: object expected"); - message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings); + message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings, long + 1); } if (object.dotnetSettings != null) { if (typeof object.dotnetSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.dotnetSettings: object expected"); - message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings); + message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings, long + 1); } if (object.rubySettings != null) { if (typeof object.rubySettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.rubySettings: object expected"); - message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings); + message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings, long + 1); } if (object.goSettings != null) { if (typeof object.goSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.goSettings: object expected"); - message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings); + message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings, long + 1); } return message; }; @@ -32238,7 +33474,7 @@ this.librarySettings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32406,9 +33642,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Publishing.decode = function decode(reader, length, error) { + Publishing.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Publishing(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32418,7 +33658,7 @@ case 2: { if (!(message.methodSettings && message.methodSettings.length)) message.methodSettings = []; - message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32())); + message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 101: { @@ -32454,7 +33694,7 @@ case 109: { if (!(message.librarySettings && message.librarySettings.length)) message.librarySettings = []; - message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32())); + message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 110: { @@ -32466,7 +33706,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32497,14 +33737,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Publishing.verify = function verify(message) { + Publishing.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methodSettings != null && message.hasOwnProperty("methodSettings")) { if (!Array.isArray(message.methodSettings)) return "methodSettings: array expected"; for (var i = 0; i < message.methodSettings.length; ++i) { - var error = $root.google.api.MethodSettings.verify(message.methodSettings[i]); + var error = $root.google.api.MethodSettings.verify(message.methodSettings[i], long + 1); if (error) return "methodSettings." + error; } @@ -32549,7 +33793,7 @@ if (!Array.isArray(message.librarySettings)) return "librarySettings: array expected"; for (var i = 0; i < message.librarySettings.length; ++i) { - var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i]); + var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i], long + 1); if (error) return "librarySettings." + error; } @@ -32571,9 +33815,13 @@ * @param {Object.} object Plain object * @returns {google.api.Publishing} Publishing */ - Publishing.fromObject = function fromObject(object) { + Publishing.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Publishing) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Publishing(); if (object.methodSettings) { if (!Array.isArray(object.methodSettings)) @@ -32582,7 +33830,7 @@ for (var i = 0; i < object.methodSettings.length; ++i) { if (typeof object.methodSettings[i] !== "object") throw TypeError(".google.api.Publishing.methodSettings: object expected"); - message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i]); + message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i], long + 1); } } if (object.newIssueUri != null) @@ -32649,7 +33897,7 @@ for (var i = 0; i < object.librarySettings.length; ++i) { if (typeof object.librarySettings[i] !== "object") throw TypeError(".google.api.Publishing.librarySettings: object expected"); - message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i]); + message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i], long + 1); } } if (object.protoReferenceDocumentationUri != null) @@ -32773,7 +34021,7 @@ this.serviceClassNames = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32859,9 +34107,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - JavaSettings.decode = function decode(reader, length, error) { + JavaSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.JavaSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -32888,19 +34140,21 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.serviceClassNames, key); message.serviceClassNames[key] = value; break; } case 3: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32931,9 +34185,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - JavaSettings.verify = function verify(message) { + JavaSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.libraryPackage != null && message.hasOwnProperty("libraryPackage")) if (!$util.isString(message.libraryPackage)) return "libraryPackage: string expected"; @@ -32946,7 +34204,7 @@ return "serviceClassNames: string{k:string} expected"; } if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -32961,9 +34219,13 @@ * @param {Object.} object Plain object * @returns {google.api.JavaSettings} JavaSettings */ - JavaSettings.fromObject = function fromObject(object) { + JavaSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.JavaSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.JavaSettings(); if (object.libraryPackage != null) message.libraryPackage = String(object.libraryPackage); @@ -32971,13 +34233,16 @@ if (typeof object.serviceClassNames !== "object") throw TypeError(".google.api.JavaSettings.serviceClassNames: object expected"); message.serviceClassNames = {}; - for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.serviceClassNames, keys[i]); message.serviceClassNames[keys[i]] = String(object.serviceClassNames[keys[i]]); + } } if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.JavaSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -33006,8 +34271,11 @@ var keys2; if (message.serviceClassNames && (keys2 = Object.keys(message.serviceClassNames)).length) { object.serviceClassNames = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.serviceClassNames, keys2[j]); object.serviceClassNames[keys2[j]] = message.serviceClassNames[keys2[j]]; + } } if (message.common != null && message.hasOwnProperty("common")) object.common = $root.google.api.CommonLanguageSettings.toObject(message.common, options); @@ -33063,7 +34331,7 @@ function CppSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33128,9 +34396,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CppSettings.decode = function decode(reader, length, error) { + CppSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CppSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33138,11 +34410,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33173,11 +34445,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CppSettings.verify = function verify(message) { + CppSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -33192,14 +34468,18 @@ * @param {Object.} object Plain object * @returns {google.api.CppSettings} CppSettings */ - CppSettings.fromObject = function fromObject(object) { + CppSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CppSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CppSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.CppSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -33273,7 +34553,7 @@ function PhpSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33338,9 +34618,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PhpSettings.decode = function decode(reader, length, error) { + PhpSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PhpSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33348,11 +34632,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33383,11 +34667,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PhpSettings.verify = function verify(message) { + PhpSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -33402,14 +34690,18 @@ * @param {Object.} object Plain object * @returns {google.api.PhpSettings} PhpSettings */ - PhpSettings.fromObject = function fromObject(object) { + PhpSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PhpSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PhpSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PhpSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -33484,7 +34776,7 @@ function PythonSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33559,9 +34851,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PythonSettings.decode = function decode(reader, length, error) { + PythonSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33569,15 +34865,15 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32()); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33608,16 +34904,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PythonSettings.verify = function verify(message) { + PythonSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } if (message.experimentalFeatures != null && message.hasOwnProperty("experimentalFeatures")) { - var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures); + var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures, long + 1); if (error) return "experimentalFeatures." + error; } @@ -33632,19 +34932,23 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings} PythonSettings */ - PythonSettings.fromObject = function fromObject(object) { + PythonSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PythonSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.experimentalFeatures != null) { if (typeof object.experimentalFeatures !== "object") throw TypeError(".google.api.PythonSettings.experimentalFeatures: object expected"); - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures, long + 1); } return message; }; @@ -33721,7 +35025,7 @@ function ExperimentalFeatures(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33806,9 +35110,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExperimentalFeatures.decode = function decode(reader, length, error) { + ExperimentalFeatures.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings.ExperimentalFeatures(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33828,7 +35136,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33859,9 +35167,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExperimentalFeatures.verify = function verify(message) { + ExperimentalFeatures.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.restAsyncIoEnabled != null && message.hasOwnProperty("restAsyncIoEnabled")) if (typeof message.restAsyncIoEnabled !== "boolean") return "restAsyncIoEnabled: boolean expected"; @@ -33882,9 +35194,13 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings.ExperimentalFeatures} ExperimentalFeatures */ - ExperimentalFeatures.fromObject = function fromObject(object) { + ExperimentalFeatures.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings.ExperimentalFeatures) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings.ExperimentalFeatures(); if (object.restAsyncIoEnabled != null) message.restAsyncIoEnabled = Boolean(object.restAsyncIoEnabled); @@ -33974,7 +35290,7 @@ function NodeSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34039,9 +35355,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NodeSettings.decode = function decode(reader, length, error) { + NodeSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.NodeSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34049,11 +35369,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34084,11 +35404,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NodeSettings.verify = function verify(message) { + NodeSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -34103,14 +35427,18 @@ * @param {Object.} object Plain object * @returns {google.api.NodeSettings} NodeSettings */ - NodeSettings.fromObject = function fromObject(object) { + NodeSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.NodeSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.NodeSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.NodeSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -34194,7 +35522,7 @@ this.handwrittenSignatures = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34314,9 +35642,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DotnetSettings.decode = function decode(reader, length, error) { + DotnetSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.DotnetSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -34324,7 +35656,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -34343,10 +35675,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } @@ -34366,10 +35700,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedResources, key); message.renamedResources[key] = value; break; } @@ -34392,7 +35728,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34423,11 +35759,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DotnetSettings.verify = function verify(message) { + DotnetSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -34479,28 +35819,38 @@ * @param {Object.} object Plain object * @returns {google.api.DotnetSettings} DotnetSettings */ - DotnetSettings.fromObject = function fromObject(object) { + DotnetSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.DotnetSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.DotnetSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.DotnetSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.DotnetSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } if (object.renamedResources) { if (typeof object.renamedResources !== "object") throw TypeError(".google.api.DotnetSettings.renamedResources: object expected"); message.renamedResources = {}; - for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedResources, keys[i]); message.renamedResources[keys[i]] = String(object.renamedResources[keys[i]]); + } } if (object.ignoredResources) { if (!Array.isArray(object.ignoredResources)) @@ -34555,13 +35905,19 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } if (message.renamedResources && (keys2 = Object.keys(message.renamedResources)).length) { object.renamedResources = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedResources, keys2[j]); object.renamedResources[keys2[j]] = message.renamedResources[keys2[j]]; + } } if (message.ignoredResources && message.ignoredResources.length) { object.ignoredResources = []; @@ -34630,7 +35986,7 @@ function RubySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34695,9 +36051,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RubySettings.decode = function decode(reader, length, error) { + RubySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.RubySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34705,11 +36065,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34740,11 +36100,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RubySettings.verify = function verify(message) { + RubySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -34759,14 +36123,18 @@ * @param {Object.} object Plain object * @returns {google.api.RubySettings} RubySettings */ - RubySettings.fromObject = function fromObject(object) { + RubySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.RubySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.RubySettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.RubySettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -34842,7 +36210,7 @@ this.renamedServices = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34918,9 +36286,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GoSettings.decode = function decode(reader, length, error) { + GoSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.GoSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -34928,7 +36300,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -34947,15 +36319,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34986,11 +36360,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GoSettings.verify = function verify(message) { + GoSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -35013,21 +36391,28 @@ * @param {Object.} object Plain object * @returns {google.api.GoSettings} GoSettings */ - GoSettings.fromObject = function fromObject(object) { + GoSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.GoSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.GoSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.GoSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.GoSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } return message; }; @@ -35054,8 +36439,11 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } return object; }; @@ -35112,7 +36500,7 @@ this.autoPopulatedFields = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35198,9 +36586,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodSettings.decode = function decode(reader, length, error) { + MethodSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35212,7 +36604,7 @@ break; } case 2: { - message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32()); + message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -35222,7 +36614,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35253,14 +36645,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodSettings.verify = function verify(message) { + MethodSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) return "selector: string expected"; if (message.longRunning != null && message.hasOwnProperty("longRunning")) { - var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning); + var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning, long + 1); if (error) return "longRunning." + error; } @@ -35282,16 +36678,20 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings} MethodSettings */ - MethodSettings.fromObject = function fromObject(object) { + MethodSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings(); if (object.selector != null) message.selector = String(object.selector); if (object.longRunning != null) { if (typeof object.longRunning !== "object") throw TypeError(".google.api.MethodSettings.longRunning: object expected"); - message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning); + message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning, long + 1); } if (object.autoPopulatedFields) { if (!Array.isArray(object.autoPopulatedFields)) @@ -35383,7 +36783,7 @@ function LongRunning(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35478,9 +36878,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LongRunning.decode = function decode(reader, length, error) { + LongRunning.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings.LongRunning(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35488,7 +36892,7 @@ break; switch (tag >>> 3) { case 1: { - message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -35496,15 +36900,15 @@ break; } case 3: { - message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35535,11 +36939,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LongRunning.verify = function verify(message) { + LongRunning.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.initialPollDelay != null && message.hasOwnProperty("initialPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.initialPollDelay); + var error = $root.google.protobuf.Duration.verify(message.initialPollDelay, long + 1); if (error) return "initialPollDelay." + error; } @@ -35547,12 +36955,12 @@ if (typeof message.pollDelayMultiplier !== "number") return "pollDelayMultiplier: number expected"; if (message.maxPollDelay != null && message.hasOwnProperty("maxPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.maxPollDelay); + var error = $root.google.protobuf.Duration.verify(message.maxPollDelay, long + 1); if (error) return "maxPollDelay." + error; } if (message.totalPollTimeout != null && message.hasOwnProperty("totalPollTimeout")) { - var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout); + var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout, long + 1); if (error) return "totalPollTimeout." + error; } @@ -35567,26 +36975,30 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings.LongRunning} LongRunning */ - LongRunning.fromObject = function fromObject(object) { + LongRunning.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings.LongRunning) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings.LongRunning(); if (object.initialPollDelay != null) { if (typeof object.initialPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.initialPollDelay: object expected"); - message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay); + message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay, long + 1); } if (object.pollDelayMultiplier != null) message.pollDelayMultiplier = Number(object.pollDelayMultiplier); if (object.maxPollDelay != null) { if (typeof object.maxPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.maxPollDelay: object expected"); - message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay); + message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay, long + 1); } if (object.totalPollTimeout != null) { if (typeof object.totalPollTimeout !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.totalPollTimeout: object expected"); - message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout); + message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout, long + 1); } return message; }; @@ -35717,7 +37129,7 @@ this.methods = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35793,9 +37205,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectiveGapicGeneration.decode = function decode(reader, length, error) { + SelectiveGapicGeneration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.SelectiveGapicGeneration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35813,7 +37229,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35844,9 +37260,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectiveGapicGeneration.verify = function verify(message) { + SelectiveGapicGeneration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methods != null && message.hasOwnProperty("methods")) { if (!Array.isArray(message.methods)) return "methods: array expected"; @@ -35868,9 +37288,13 @@ * @param {Object.} object Plain object * @returns {google.api.SelectiveGapicGeneration} SelectiveGapicGeneration */ - SelectiveGapicGeneration.fromObject = function fromObject(object) { + SelectiveGapicGeneration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.SelectiveGapicGeneration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.SelectiveGapicGeneration(); if (object.methods) { if (!Array.isArray(object.methods)) @@ -36022,7 +37446,7 @@ this.style = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36152,9 +37576,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decode = function decode(reader, length, error) { + ResourceDescriptor.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceDescriptor(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36199,7 +37627,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36230,9 +37658,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceDescriptor.verify = function verify(message) { + ResourceDescriptor.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -36284,9 +37716,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceDescriptor} ResourceDescriptor */ - ResourceDescriptor.fromObject = function fromObject(object) { + ResourceDescriptor.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceDescriptor) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceDescriptor(); if (object.type != null) message.type = String(object.type); @@ -36474,7 +37910,7 @@ function ResourceReference(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36549,9 +37985,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceReference.decode = function decode(reader, length, error) { + ResourceReference.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceReference(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36567,7 +38007,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36598,9 +38038,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceReference.verify = function verify(message) { + ResourceReference.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -36618,9 +38062,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceReference} ResourceReference */ - ResourceReference.fromObject = function fromObject(object) { + ResourceReference.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceReference) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceReference(); if (object.type != null) message.type = String(object.type); @@ -36715,7 +38163,7 @@ this.file = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36781,9 +38229,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorSet.decode = function decode(reader, length, error) { + FileDescriptorSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36793,11 +38245,11 @@ case 1: { if (!(message.file && message.file.length)) message.file = []; - message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); + message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36828,14 +38280,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorSet.verify = function verify(message) { + FileDescriptorSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.file != null && message.hasOwnProperty("file")) { if (!Array.isArray(message.file)) return "file: array expected"; for (var i = 0; i < message.file.length; ++i) { - var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); + var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i], long + 1); if (error) return "file." + error; } @@ -36851,9 +38307,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet */ - FileDescriptorSet.fromObject = function fromObject(object) { + FileDescriptorSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorSet(); if (object.file) { if (!Array.isArray(object.file)) @@ -36862,7 +38322,7 @@ for (var i = 0; i < object.file.length; ++i) { if (typeof object.file[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); - message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); + message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i], long + 1); } } return message; @@ -36995,7 +38455,7 @@ this.extension = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37198,9 +38658,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorProto.decode = function decode(reader, length, error) { + FileDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37252,33 +38716,33 @@ case 4: { if (!(message.messageType && message.messageType.length)) message.messageType = []; - message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.service && message.service.length)) message.service = []; - message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); + message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { - message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -37290,7 +38754,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37321,9 +38785,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorProto.verify = function verify(message) { + FileDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -37362,7 +38830,7 @@ if (!Array.isArray(message.messageType)) return "messageType: array expected"; for (var i = 0; i < message.messageType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i], long + 1); if (error) return "messageType." + error; } @@ -37371,7 +38839,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -37380,7 +38848,7 @@ if (!Array.isArray(message.service)) return "service: array expected"; for (var i = 0; i < message.service.length; ++i) { - var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); + var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i], long + 1); if (error) return "service." + error; } @@ -37389,18 +38857,18 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FileOptions.verify(message.options); + var error = $root.google.protobuf.FileOptions.verify(message.options, long + 1); if (error) return "options." + error; } if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { - var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); + var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo, long + 1); if (error) return "sourceCodeInfo." + error; } @@ -37436,9 +38904,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto */ - FileDescriptorProto.fromObject = function fromObject(object) { + FileDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -37479,7 +38951,7 @@ for (var i = 0; i < object.messageType.length; ++i) { if (typeof object.messageType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); - message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); + message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i], long + 1); } } if (object.enumType) { @@ -37489,7 +38961,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.service) { @@ -37499,7 +38971,7 @@ for (var i = 0; i < object.service.length; ++i) { if (typeof object.service[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); - message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); + message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i], long + 1); } } if (object.extension) { @@ -37509,18 +38981,18 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FileOptions.fromObject(object.options); + message.options = $root.google.protobuf.FileOptions.fromObject(object.options, long + 1); } if (object.sourceCodeInfo != null) { if (typeof object.sourceCodeInfo !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo, long + 1); } if (object.syntax != null) message.syntax = String(object.syntax); @@ -37736,7 +39208,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37909,9 +39381,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DescriptorProto.decode = function decode(reader, length, error) { + DescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37925,47 +39401,47 @@ case 2: { if (!(message.field && message.field.length)) message.field = []; - message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.nestedType && message.nestedType.length)) message.nestedType = []; - message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.extensionRange && message.extensionRange.length)) message.extensionRange = []; - message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); + message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { if (!(message.oneofDecl && message.oneofDecl.length)) message.oneofDecl = []; - message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); + message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { - message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 10: { @@ -37979,7 +39455,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38010,9 +39486,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DescriptorProto.verify = function verify(message) { + DescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -38020,7 +39500,7 @@ if (!Array.isArray(message.field)) return "field: array expected"; for (var i = 0; i < message.field.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i], long + 1); if (error) return "field." + error; } @@ -38029,7 +39509,7 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } @@ -38038,7 +39518,7 @@ if (!Array.isArray(message.nestedType)) return "nestedType: array expected"; for (var i = 0; i < message.nestedType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i], long + 1); if (error) return "nestedType." + error; } @@ -38047,7 +39527,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -38056,7 +39536,7 @@ if (!Array.isArray(message.extensionRange)) return "extensionRange: array expected"; for (var i = 0; i < message.extensionRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); + var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i], long + 1); if (error) return "extensionRange." + error; } @@ -38065,13 +39545,13 @@ if (!Array.isArray(message.oneofDecl)) return "oneofDecl: array expected"; for (var i = 0; i < message.oneofDecl.length; ++i) { - var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); + var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i], long + 1); if (error) return "oneofDecl." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MessageOptions.verify(message.options); + var error = $root.google.protobuf.MessageOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -38079,7 +39559,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -38111,9 +39591,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto} DescriptorProto */ - DescriptorProto.fromObject = function fromObject(object) { + DescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -38124,7 +39608,7 @@ for (var i = 0; i < object.field.length; ++i) { if (typeof object.field[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); - message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); + message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i], long + 1); } } if (object.extension) { @@ -38134,7 +39618,7 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.nestedType) { @@ -38144,7 +39628,7 @@ for (var i = 0; i < object.nestedType.length; ++i) { if (typeof object.nestedType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); - message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); + message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i], long + 1); } } if (object.enumType) { @@ -38154,7 +39638,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.extensionRange) { @@ -38164,7 +39648,7 @@ for (var i = 0; i < object.extensionRange.length; ++i) { if (typeof object.extensionRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); - message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); + message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i], long + 1); } } if (object.oneofDecl) { @@ -38174,13 +39658,13 @@ for (var i = 0; i < object.oneofDecl.length; ++i) { if (typeof object.oneofDecl[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); - message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); + message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); + message.options = $root.google.protobuf.MessageOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -38189,7 +39673,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -38347,7 +39831,7 @@ function ExtensionRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38432,9 +39916,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRange.decode = function decode(reader, length, error) { + ExtensionRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38450,11 +39938,11 @@ break; } case 3: { - message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38485,9 +39973,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRange.verify = function verify(message) { + ExtensionRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -38495,7 +39987,7 @@ if (!$util.isInteger(message.end)) return "end: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); + var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -38510,9 +40002,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange */ - ExtensionRange.fromObject = function fromObject(object) { + ExtensionRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); if (object.start != null) message.start = object.start | 0; @@ -38521,7 +40017,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); - message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); + message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options, long + 1); } return message; }; @@ -38603,7 +40099,7 @@ function ReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38678,9 +40174,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReservedRange.decode = function decode(reader, length, error) { + ReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38696,7 +40196,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38727,9 +40227,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReservedRange.verify = function verify(message) { + ReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -38747,9 +40251,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange */ - ReservedRange.fromObject = function fromObject(object) { + ReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -38839,7 +40347,7 @@ this.declaration = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38936,9 +40444,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRangeOptions.decode = function decode(reader, length, error) { + ExtensionRangeOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38948,17 +40460,17 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.declaration && message.declaration.length)) message.declaration = []; - message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32())); + message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -38966,7 +40478,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38997,14 +40509,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRangeOptions.verify = function verify(message) { + ExtensionRangeOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -39013,13 +40529,13 @@ if (!Array.isArray(message.declaration)) return "declaration: array expected"; for (var i = 0; i < message.declaration.length; ++i) { - var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i]); + var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i], long + 1); if (error) return "declaration." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -39042,9 +40558,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions */ - ExtensionRangeOptions.fromObject = function fromObject(object) { + ExtensionRangeOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions(); if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -39053,7 +40573,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object.declaration) { @@ -39063,13 +40583,13 @@ for (var i = 0; i < object.declaration.length; ++i) { if (typeof object.declaration[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected"); - message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i]); + message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } switch (object.verification) { case "DECLARATION": @@ -39178,7 +40698,7 @@ function Declaration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39283,9 +40803,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Declaration.decode = function decode(reader, length, error) { + Declaration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39313,7 +40837,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39344,9 +40868,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Declaration.verify = function verify(message) { + Declaration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.number != null && message.hasOwnProperty("number")) if (!$util.isInteger(message.number)) return "number: integer expected"; @@ -39373,9 +40901,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration */ - Declaration.fromObject = function fromObject(object) { + Declaration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions.Declaration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); if (object.number != null) message.number = object.number | 0; @@ -39499,7 +41031,7 @@ function FieldDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39664,9 +41196,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldDescriptorProto.decode = function decode(reader, length, error) { + FieldDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39710,7 +41246,7 @@ break; } case 8: { - message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { @@ -39718,7 +41254,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39749,9 +41285,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldDescriptorProto.verify = function verify(message) { + FieldDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -39807,7 +41347,7 @@ if (!$util.isString(message.jsonName)) return "jsonName: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FieldOptions.verify(message.options); + var error = $root.google.protobuf.FieldOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -39825,9 +41365,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto */ - FieldDescriptorProto.fromObject = function fromObject(object) { + FieldDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -39946,7 +41490,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); + message.options = $root.google.protobuf.FieldOptions.fromObject(object.options, long + 1); } if (object.proto3Optional != null) message.proto3Optional = Boolean(object.proto3Optional); @@ -40116,7 +41660,7 @@ function OneofDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40191,9 +41735,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofDescriptorProto.decode = function decode(reader, length, error) { + OneofDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40205,11 +41753,11 @@ break; } case 2: { - message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40240,14 +41788,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofDescriptorProto.verify = function verify(message) { + OneofDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.OneofOptions.verify(message.options); + var error = $root.google.protobuf.OneofOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -40262,16 +41814,20 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto */ - OneofDescriptorProto.fromObject = function fromObject(object) { + OneofDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofDescriptorProto(); if (object.name != null) message.name = String(object.name); if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); + message.options = $root.google.protobuf.OneofOptions.fromObject(object.options, long + 1); } return message; }; @@ -40357,7 +41913,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40475,9 +42031,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumDescriptorProto.decode = function decode(reader, length, error) { + EnumDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40491,17 +42051,17 @@ case 2: { if (!(message.value && message.value.length)) message.value = []; - message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); + message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { @@ -40515,7 +42075,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40546,9 +42106,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumDescriptorProto.verify = function verify(message) { + EnumDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -40556,13 +42120,13 @@ if (!Array.isArray(message.value)) return "value: array expected"; for (var i = 0; i < message.value.length; ++i) { - var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); + var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i], long + 1); if (error) return "value." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumOptions.verify(message.options); + var error = $root.google.protobuf.EnumOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -40570,7 +42134,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -40602,9 +42166,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto */ - EnumDescriptorProto.fromObject = function fromObject(object) { + EnumDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -40615,13 +42183,13 @@ for (var i = 0; i < object.value.length; ++i) { if (typeof object.value[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); - message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); + message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -40630,7 +42198,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -40757,7 +42325,7 @@ function EnumReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40832,9 +42400,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumReservedRange.decode = function decode(reader, length, error) { + EnumReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40850,7 +42422,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40881,9 +42453,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumReservedRange.verify = function verify(message) { + EnumReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -40901,9 +42477,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange */ - EnumReservedRange.fromObject = function fromObject(object) { + EnumReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -40990,7 +42570,7 @@ function EnumValueDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41075,9 +42655,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueDescriptorProto.decode = function decode(reader, length, error) { + EnumValueDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41093,11 +42677,11 @@ break; } case 3: { - message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41128,9 +42712,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueDescriptorProto.verify = function verify(message) { + EnumValueDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -41138,7 +42726,7 @@ if (!$util.isInteger(message.number)) return "number: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumValueOptions.verify(message.options); + var error = $root.google.protobuf.EnumValueOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -41153,9 +42741,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto */ - EnumValueDescriptorProto.fromObject = function fromObject(object) { + EnumValueDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -41164,7 +42756,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options, long + 1); } return message; }; @@ -41248,7 +42840,7 @@ this.method = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41334,9 +42926,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceDescriptorProto.decode = function decode(reader, length, error) { + ServiceDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41350,15 +42946,15 @@ case 2: { if (!(message.method && message.method.length)) message.method = []; - message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); + message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41389,9 +42985,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceDescriptorProto.verify = function verify(message) { + ServiceDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -41399,13 +42999,13 @@ if (!Array.isArray(message.method)) return "method: array expected"; for (var i = 0; i < message.method.length; ++i) { - var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); + var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i], long + 1); if (error) return "method." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ServiceOptions.verify(message.options); + var error = $root.google.protobuf.ServiceOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -41420,9 +43020,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto */ - ServiceDescriptorProto.fromObject = function fromObject(object) { + ServiceDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -41433,13 +43037,13 @@ for (var i = 0; i < object.method.length; ++i) { if (typeof object.method[i] !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); - message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); + message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); + message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options, long + 1); } return message; }; @@ -41529,7 +43133,7 @@ function MethodDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41644,9 +43248,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodDescriptorProto.decode = function decode(reader, length, error) { + MethodDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41666,7 +43274,7 @@ break; } case 4: { - message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -41678,7 +43286,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41709,9 +43317,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodDescriptorProto.verify = function verify(message) { + MethodDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -41722,7 +43334,7 @@ if (!$util.isString(message.outputType)) return "outputType: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MethodOptions.verify(message.options); + var error = $root.google.protobuf.MethodOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -41743,9 +43355,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto */ - MethodDescriptorProto.fromObject = function fromObject(object) { + MethodDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -41756,7 +43372,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); + message.options = $root.google.protobuf.MethodOptions.fromObject(object.options, long + 1); } if (object.clientStreaming != null) message.clientStreaming = Boolean(object.clientStreaming); @@ -41873,7 +43489,7 @@ this[".google.api.resourceDefinition"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42150,9 +43766,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileOptions.decode = function decode(reader, length, error) { + FileOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42236,23 +43856,23 @@ break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) message[".google.api.resourceDefinition"] = []; - message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); + message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42283,9 +43903,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileOptions.verify = function verify(message) { + FileOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) if (!$util.isString(message.javaPackage)) return "javaPackage: string expected"; @@ -42350,7 +43974,7 @@ if (!$util.isString(message.rubyPackage)) return "rubyPackage: string expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -42358,7 +43982,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -42367,7 +43991,7 @@ if (!Array.isArray(message[".google.api.resourceDefinition"])) return ".google.api.resourceDefinition: array expected"; for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i], long + 1); if (error) return ".google.api.resourceDefinition." + error; } @@ -42383,9 +44007,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileOptions} FileOptions */ - FileOptions.fromObject = function fromObject(object) { + FileOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileOptions(); if (object.javaPackage != null) message.javaPackage = String(object.javaPackage); @@ -42446,7 +44074,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FileOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -42455,7 +44083,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resourceDefinition"]) { @@ -42465,7 +44093,7 @@ for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { if (typeof object[".google.api.resourceDefinition"][i] !== "object") throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); - message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); + message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i], long + 1); } } return message; @@ -42636,7 +44264,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42772,9 +44400,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MessageOptions.decode = function decode(reader, length, error) { + MessageOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MessageOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42802,21 +44434,21 @@ break; } case 12: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42847,9 +44479,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MessageOptions.verify = function verify(message) { + MessageOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) if (typeof message.messageSetWireFormat !== "boolean") return "messageSetWireFormat: boolean expected"; @@ -42866,7 +44502,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -42874,13 +44510,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"], long + 1); if (error) return ".google.api.resource." + error; } @@ -42895,9 +44531,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MessageOptions} MessageOptions */ - MessageOptions.fromObject = function fromObject(object) { + MessageOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MessageOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MessageOptions(); if (object.messageSetWireFormat != null) message.messageSetWireFormat = Boolean(object.messageSetWireFormat); @@ -42912,7 +44552,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MessageOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -42921,13 +44561,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resource"] != null) { if (typeof object[".google.api.resource"] !== "object") throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"], long + 1); } return message; }; @@ -43046,7 +44686,7 @@ this[".google.api.fieldBehavior"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43265,9 +44905,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldOptions.decode = function decode(reader, length, error) { + FieldOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43324,21 +44968,21 @@ case 20: { if (!(message.editionDefaults && message.editionDefaults.length)) message.editionDefaults = []; - message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32())); + message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 21: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1052: { @@ -43353,11 +44997,11 @@ break; } case 1055: { - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43388,9 +45032,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldOptions.verify = function verify(message) { + FieldOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ctype != null && message.hasOwnProperty("ctype")) switch (message.ctype) { default: @@ -43460,18 +45108,18 @@ if (!Array.isArray(message.editionDefaults)) return "editionDefaults: array expected"; for (var i = 0; i < message.editionDefaults.length; ++i) { - var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i]); + var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i], long + 1); if (error) return "editionDefaults." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -43479,7 +45127,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -43504,7 +45152,7 @@ } } if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { - var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); + var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"], long + 1); if (error) return ".google.api.resourceReference." + error; } @@ -43519,9 +45167,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions} FieldOptions */ - FieldOptions.fromObject = function fromObject(object) { + FieldOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions(); switch (object.ctype) { default: @@ -43655,18 +45307,18 @@ for (var i = 0; i < object.editionDefaults.length; ++i) { if (typeof object.editionDefaults[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected"); - message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i]); + message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FieldOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.FieldOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -43675,7 +45327,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.fieldBehavior"]) { @@ -43730,7 +45382,7 @@ if (object[".google.api.resourceReference"] != null) { if (typeof object[".google.api.resourceReference"] !== "object") throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"], long + 1); } return message; }; @@ -43940,7 +45592,7 @@ function EditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44015,9 +45667,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EditionDefault.decode = function decode(reader, length, error) { + EditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.EditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44033,7 +45689,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44064,9 +45720,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EditionDefault.verify = function verify(message) { + EditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -44099,9 +45759,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault */ - EditionDefault.fromObject = function fromObject(object) { + EditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.EditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.EditionDefault(); switch (object.edition) { default: @@ -44240,7 +45904,7 @@ function FeatureSupport(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44335,9 +45999,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSupport.decode = function decode(reader, length, error) { + FeatureSupport.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.FeatureSupport(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44361,7 +46029,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44392,9 +46060,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSupport.verify = function verify(message) { + FeatureSupport.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.editionIntroduced != null && message.hasOwnProperty("editionIntroduced")) switch (message.editionIntroduced) { default: @@ -44463,9 +46135,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.FeatureSupport} FeatureSupport */ - FeatureSupport.fromObject = function fromObject(object) { + FeatureSupport.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.FeatureSupport) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.FeatureSupport(); switch (object.editionIntroduced) { default: @@ -44724,7 +46400,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44800,9 +46476,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofOptions.decode = function decode(reader, length, error) { + OneofOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44810,17 +46490,17 @@ break; switch (tag >>> 3) { case 1: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44851,11 +46531,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofOptions.verify = function verify(message) { + OneofOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -44863,7 +46547,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -44879,14 +46563,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofOptions} OneofOptions */ - OneofOptions.fromObject = function fromObject(object) { + OneofOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.OneofOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -44895,7 +46583,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -44982,7 +46670,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45088,9 +46776,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumOptions.decode = function decode(reader, length, error) { + EnumOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45110,17 +46802,17 @@ break; } case 7: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45151,9 +46843,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumOptions.verify = function verify(message) { + EnumOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) if (typeof message.allowAlias !== "boolean") return "allowAlias: boolean expected"; @@ -45164,7 +46860,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -45172,7 +46868,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -45188,9 +46884,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumOptions} EnumOptions */ - EnumOptions.fromObject = function fromObject(object) { + EnumOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumOptions(); if (object.allowAlias != null) message.allowAlias = Boolean(object.allowAlias); @@ -45201,7 +46901,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -45210,7 +46910,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -45307,7 +47007,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45413,9 +47113,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueOptions.decode = function decode(reader, length, error) { + EnumValueOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45427,7 +47131,7 @@ break; } case 2: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -45435,17 +47139,17 @@ break; } case 4: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45476,14 +47180,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueOptions.verify = function verify(message) { + EnumValueOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -45491,7 +47199,7 @@ if (typeof message.debugRedact !== "boolean") return "debugRedact: boolean expected"; if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -45499,7 +47207,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -45515,23 +47223,27 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueOptions} EnumValueOptions */ - EnumValueOptions.fromObject = function fromObject(object) { + EnumValueOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumValueOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.debugRedact != null) message.debugRedact = Boolean(object.debugRedact); if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.EnumValueOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -45540,7 +47252,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -45638,7 +47350,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45754,9 +47466,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceOptions.decode = function decode(reader, length, error) { + ServiceOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45764,7 +47480,7 @@ break; switch (tag >>> 3) { case 34: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 33: { @@ -45774,7 +47490,7 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1049: { @@ -45790,7 +47506,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45821,11 +47537,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceOptions.verify = function verify(message) { + ServiceOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -45836,7 +47556,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -45861,14 +47581,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceOptions} ServiceOptions */ - ServiceOptions.fromObject = function fromObject(object) { + ServiceOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ServiceOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -45879,7 +47603,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.defaultHost"] != null) @@ -45988,7 +47712,7 @@ this[".google.api.methodSignature"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46115,9 +47839,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodOptions.decode = function decode(reader, length, error) { + MethodOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46133,17 +47861,17 @@ break; } case 35: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 72295728: { - message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); + message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1051: { @@ -46153,11 +47881,11 @@ break; } case 1049: { - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32()); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46188,9 +47916,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodOptions.verify = function verify(message) { + MethodOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; @@ -46204,7 +47936,7 @@ break; } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -46212,13 +47944,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { - var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); + var error = $root.google.api.HttpRule.verify(message[".google.api.http"], long + 1); if (error) return ".google.api.http." + error; } @@ -46230,7 +47962,7 @@ return ".google.api.methodSignature: string[] expected"; } if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) { - var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"]); + var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"], long + 1); if (error) return ".google.longrunning.operationInfo." + error; } @@ -46245,9 +47977,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodOptions} MethodOptions */ - MethodOptions.fromObject = function fromObject(object) { + MethodOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -46274,7 +48010,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MethodOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -46283,13 +48019,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.http"] != null) { if (typeof object[".google.api.http"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); - message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); + message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"], long + 1); } if (object[".google.api.methodSignature"]) { if (!Array.isArray(object[".google.api.methodSignature"])) @@ -46301,7 +48037,7 @@ if (object[".google.longrunning.operationInfo"] != null) { if (typeof object[".google.longrunning.operationInfo"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected"); - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"]); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"], long + 1); } return message; }; @@ -46425,7 +48161,7 @@ this.name = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46551,9 +48287,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UninterpretedOption.decode = function decode(reader, length, error) { + UninterpretedOption.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46563,7 +48303,7 @@ case 2: { if (!(message.name && message.name.length)) message.name = []; - message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -46591,7 +48331,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46622,14 +48362,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UninterpretedOption.verify = function verify(message) { + UninterpretedOption.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) { if (!Array.isArray(message.name)) return "name: array expected"; for (var i = 0; i < message.name.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); + var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i], long + 1); if (error) return "name." + error; } @@ -46663,9 +48407,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption} UninterpretedOption */ - UninterpretedOption.fromObject = function fromObject(object) { + UninterpretedOption.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption(); if (object.name) { if (!Array.isArray(object.name)) @@ -46674,7 +48422,7 @@ for (var i = 0; i < object.name.length; ++i) { if (typeof object.name[i] !== "object") throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); - message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); + message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i], long + 1); } } if (object.identifierValue != null) @@ -46819,7 +48567,7 @@ function NamePart(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46892,9 +48640,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NamePart.decode = function decode(reader, length, error) { + NamePart.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46910,7 +48662,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46945,9 +48697,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NamePart.verify = function verify(message) { + NamePart.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (!$util.isString(message.namePart)) return "namePart: string expected"; if (typeof message.isExtension !== "boolean") @@ -46963,9 +48719,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart */ - NamePart.fromObject = function fromObject(object) { + NamePart.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption.NamePart(); if (object.namePart != null) message.namePart = String(object.namePart); @@ -47057,7 +48817,7 @@ function FeatureSet(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47192,9 +48952,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSet.decode = function decode(reader, length, error) { + FeatureSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47234,7 +48998,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47265,9 +49029,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSet.verify = function verify(message) { + FeatureSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fieldPresence != null && message.hasOwnProperty("fieldPresence")) switch (message.fieldPresence) { default: @@ -47354,9 +49122,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet} FeatureSet */ - FeatureSet.fromObject = function fromObject(object) { + FeatureSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSet(); switch (object.fieldPresence) { default: @@ -47734,7 +49506,7 @@ function VisibilityFeature(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47789,9 +49561,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VisibilityFeature.decode = function decode(reader, length, error) { + VisibilityFeature.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet.VisibilityFeature(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47799,7 +49575,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47830,9 +49606,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VisibilityFeature.verify = function verify(message) { + VisibilityFeature.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -47844,9 +49624,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet.VisibilityFeature} VisibilityFeature */ - VisibilityFeature.fromObject = function fromObject(object) { + VisibilityFeature.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet.VisibilityFeature) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.FeatureSet.VisibilityFeature(); }; @@ -47938,7 +49722,7 @@ this.defaults = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48024,9 +49808,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetDefaults.decode = function decode(reader, length, error) { + FeatureSetDefaults.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults(); while (reader.pos < end) { var tag = reader.uint32(); @@ -48036,7 +49824,7 @@ case 1: { if (!(message.defaults && message.defaults.length)) message.defaults = []; - message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32())); + message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -48048,7 +49836,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48079,14 +49867,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetDefaults.verify = function verify(message) { + FeatureSetDefaults.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.defaults != null && message.hasOwnProperty("defaults")) { if (!Array.isArray(message.defaults)) return "defaults: array expected"; for (var i = 0; i < message.defaults.length; ++i) { - var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i]); + var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i], long + 1); if (error) return "defaults." + error; } @@ -48138,9 +49930,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults */ - FeatureSetDefaults.fromObject = function fromObject(object) { + FeatureSetDefaults.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults(); if (object.defaults) { if (!Array.isArray(object.defaults)) @@ -48149,7 +49945,7 @@ for (var i = 0; i < object.defaults.length; ++i) { if (typeof object.defaults[i] !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected"); - message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i]); + message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i], long + 1); } } switch (object.minimumEdition) { @@ -48346,7 +50142,7 @@ function FeatureSetEditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48431,9 +50227,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetEditionDefault.decode = function decode(reader, length, error) { + FeatureSetEditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -48445,15 +50245,15 @@ break; } case 4: { - message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48484,9 +50284,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetEditionDefault.verify = function verify(message) { + FeatureSetEditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -48506,12 +50310,12 @@ break; } if (message.overridableFeatures != null && message.hasOwnProperty("overridableFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures, long + 1); if (error) return "overridableFeatures." + error; } if (message.fixedFeatures != null && message.hasOwnProperty("fixedFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures, long + 1); if (error) return "fixedFeatures." + error; } @@ -48526,9 +50330,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault */ - FeatureSetEditionDefault.fromObject = function fromObject(object) { + FeatureSetEditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); switch (object.edition) { default: @@ -48589,12 +50397,12 @@ if (object.overridableFeatures != null) { if (typeof object.overridableFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.overridableFeatures: object expected"); - message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures); + message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures, long + 1); } if (object.fixedFeatures != null) { if (typeof object.fixedFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fixedFeatures: object expected"); - message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures); + message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures, long + 1); } return message; }; @@ -48679,7 +50487,7 @@ this.location = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48745,9 +50553,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SourceCodeInfo.decode = function decode(reader, length, error) { + SourceCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -48757,11 +50569,11 @@ case 1: { if (!(message.location && message.location.length)) message.location = []; - message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48792,14 +50604,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SourceCodeInfo.verify = function verify(message) { + SourceCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.location != null && message.hasOwnProperty("location")) { if (!Array.isArray(message.location)) return "location: array expected"; for (var i = 0; i < message.location.length; ++i) { - var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); + var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i], long + 1); if (error) return "location." + error; } @@ -48815,9 +50631,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo */ - SourceCodeInfo.fromObject = function fromObject(object) { + SourceCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo(); if (object.location) { if (!Array.isArray(object.location)) @@ -48826,7 +50646,7 @@ for (var i = 0; i < object.location.length; ++i) { if (typeof object.location[i] !== "object") throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); - message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); + message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i], long + 1); } } return message; @@ -48908,7 +50728,7 @@ this.leadingDetachedComments = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49022,9 +50842,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Location.decode = function decode(reader, length, error) { + Location.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo.Location(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49068,7 +50892,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49099,9 +50923,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Location.verify = function verify(message) { + Location.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -49140,9 +50968,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo.Location} Location */ - Location.fromObject = function fromObject(object) { + Location.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo.Location(); if (object.path) { if (!Array.isArray(object.path)) @@ -49269,7 +51101,7 @@ this.annotation = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49335,9 +51167,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GeneratedCodeInfo.decode = function decode(reader, length, error) { + GeneratedCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49347,11 +51183,11 @@ case 1: { if (!(message.annotation && message.annotation.length)) message.annotation = []; - message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); + message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49382,14 +51218,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GeneratedCodeInfo.verify = function verify(message) { + GeneratedCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.annotation != null && message.hasOwnProperty("annotation")) { if (!Array.isArray(message.annotation)) return "annotation: array expected"; for (var i = 0; i < message.annotation.length; ++i) { - var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); + var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i], long + 1); if (error) return "annotation." + error; } @@ -49405,9 +51245,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo */ - GeneratedCodeInfo.fromObject = function fromObject(object) { + GeneratedCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo(); if (object.annotation) { if (!Array.isArray(object.annotation)) @@ -49416,7 +51260,7 @@ for (var i = 0; i < object.annotation.length; ++i) { if (typeof object.annotation[i] !== "object") throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); - message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i], long + 1); } } return message; @@ -49496,7 +51340,7 @@ this.path = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49605,9 +51449,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Annotation.decode = function decode(reader, length, error) { + Annotation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49642,7 +51490,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49673,9 +51521,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Annotation.verify = function verify(message) { + Annotation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -49712,9 +51564,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation */ - Annotation.fromObject = function fromObject(object) { + Annotation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); if (object.path) { if (!Array.isArray(object.path)) @@ -49874,7 +51730,7 @@ function Duration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49949,9 +51805,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Duration.decode = function decode(reader, length, error) { + Duration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Duration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49967,7 +51827,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49998,9 +51858,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Duration.verify = function verify(message) { + Duration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -50018,9 +51882,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Duration} Duration */ - Duration.fromObject = function fromObject(object) { + Duration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Duration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Duration(); if (object.seconds != null) if ($util.Long) @@ -50117,7 +51985,7 @@ function Any(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50192,9 +52060,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Any.decode = function decode(reader, length, error) { + Any.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Any(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50210,7 +52082,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50241,9 +52113,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Any.verify = function verify(message) { + Any.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type_url != null && message.hasOwnProperty("type_url")) if (!$util.isString(message.type_url)) return "type_url: string expected"; @@ -50261,9 +52137,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Any} Any */ - Any.fromObject = function fromObject(object) { + Any.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Any) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Any(); if (object.type_url != null) message.type_url = String(object.type_url); @@ -50353,7 +52233,7 @@ function Empty(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50408,9 +52288,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Empty.decode = function decode(reader, length, error) { + Empty.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Empty(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50418,7 +52302,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50449,9 +52333,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Empty.verify = function verify(message) { + Empty.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -50463,9 +52351,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Empty} Empty */ - Empty.fromObject = function fromObject(object) { + Empty.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Empty) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.Empty(); }; @@ -50532,7 +52424,7 @@ this.paths = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50598,9 +52490,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldMask.decode = function decode(reader, length, error) { + FieldMask.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldMask(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50614,7 +52510,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50645,9 +52541,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldMask.verify = function verify(message) { + FieldMask.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.paths != null && message.hasOwnProperty("paths")) { if (!Array.isArray(message.paths)) return "paths: array expected"; @@ -50666,9 +52566,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldMask} FieldMask */ - FieldMask.fromObject = function fromObject(object) { + FieldMask.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldMask) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldMask(); if (object.paths) { if (!Array.isArray(object.paths)) @@ -50753,7 +52657,7 @@ function Timestamp(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50828,9 +52732,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Timestamp.decode = function decode(reader, length, error) { + Timestamp.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Timestamp(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50846,7 +52754,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50877,9 +52785,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Timestamp.verify = function verify(message) { + Timestamp.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -50897,9 +52809,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Timestamp} Timestamp */ - Timestamp.fromObject = function fromObject(object) { + Timestamp.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Timestamp) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Timestamp(); if (object.seconds != null) if ($util.Long) @@ -51211,7 +53127,7 @@ function Operation(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51330,9 +53246,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Operation.decode = function decode(reader, length, error) { + Operation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.Operation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51344,7 +53264,7 @@ break; } case 2: { - message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -51352,15 +53272,15 @@ break; } case 4: { - message.error = $root.google.rpc.Status.decode(reader, reader.uint32()); + message.error = $root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.response = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.response = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51391,15 +53311,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Operation.verify = function verify(message) { + Operation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.metadata != null && message.hasOwnProperty("metadata")) { - var error = $root.google.protobuf.Any.verify(message.metadata); + var error = $root.google.protobuf.Any.verify(message.metadata, long + 1); if (error) return "metadata." + error; } @@ -51409,7 +53333,7 @@ if (message.error != null && message.hasOwnProperty("error")) { properties.result = 1; { - var error = $root.google.rpc.Status.verify(message.error); + var error = $root.google.rpc.Status.verify(message.error, long + 1); if (error) return "error." + error; } @@ -51419,7 +53343,7 @@ return "result: multiple values"; properties.result = 1; { - var error = $root.google.protobuf.Any.verify(message.response); + var error = $root.google.protobuf.Any.verify(message.response, long + 1); if (error) return "response." + error; } @@ -51435,28 +53359,32 @@ * @param {Object.} object Plain object * @returns {google.longrunning.Operation} Operation */ - Operation.fromObject = function fromObject(object) { + Operation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.Operation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.Operation(); if (object.name != null) message.name = String(object.name); if (object.metadata != null) { if (typeof object.metadata !== "object") throw TypeError(".google.longrunning.Operation.metadata: object expected"); - message.metadata = $root.google.protobuf.Any.fromObject(object.metadata); + message.metadata = $root.google.protobuf.Any.fromObject(object.metadata, long + 1); } if (object.done != null) message.done = Boolean(object.done); if (object.error != null) { if (typeof object.error !== "object") throw TypeError(".google.longrunning.Operation.error: object expected"); - message.error = $root.google.rpc.Status.fromObject(object.error); + message.error = $root.google.rpc.Status.fromObject(object.error, long + 1); } if (object.response != null) { if (typeof object.response !== "object") throw TypeError(".google.longrunning.Operation.response: object expected"); - message.response = $root.google.protobuf.Any.fromObject(object.response); + message.response = $root.google.protobuf.Any.fromObject(object.response, long + 1); } return message; }; @@ -51547,7 +53475,7 @@ function GetOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51612,9 +53540,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetOperationRequest.decode = function decode(reader, length, error) { + GetOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.GetOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51626,7 +53558,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51657,9 +53589,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetOperationRequest.verify = function verify(message) { + GetOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -51674,9 +53610,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.GetOperationRequest} GetOperationRequest */ - GetOperationRequest.fromObject = function fromObject(object) { + GetOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.GetOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.GetOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -51755,7 +53695,7 @@ function ListOperationsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51850,9 +53790,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsRequest.decode = function decode(reader, length, error) { + ListOperationsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51876,7 +53820,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51907,9 +53851,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsRequest.verify = function verify(message) { + ListOperationsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -51933,9 +53881,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest */ - ListOperationsRequest.fromObject = function fromObject(object) { + ListOperationsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsRequest(); if (object.name != null) message.name = String(object.name); @@ -52029,7 +53981,7 @@ this.operations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52105,9 +54057,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsResponse.decode = function decode(reader, length, error) { + ListOperationsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52117,7 +54073,7 @@ case 1: { if (!(message.operations && message.operations.length)) message.operations = []; - message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32())); + message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -52125,7 +54081,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52156,14 +54112,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsResponse.verify = function verify(message) { + ListOperationsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.operations != null && message.hasOwnProperty("operations")) { if (!Array.isArray(message.operations)) return "operations: array expected"; for (var i = 0; i < message.operations.length; ++i) { - var error = $root.google.longrunning.Operation.verify(message.operations[i]); + var error = $root.google.longrunning.Operation.verify(message.operations[i], long + 1); if (error) return "operations." + error; } @@ -52182,9 +54142,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse */ - ListOperationsResponse.fromObject = function fromObject(object) { + ListOperationsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsResponse(); if (object.operations) { if (!Array.isArray(object.operations)) @@ -52193,7 +54157,7 @@ for (var i = 0; i < object.operations.length; ++i) { if (typeof object.operations[i] !== "object") throw TypeError(".google.longrunning.ListOperationsResponse.operations: object expected"); - message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i]); + message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i], long + 1); } } if (object.nextPageToken != null) @@ -52277,7 +54241,7 @@ function CancelOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52342,9 +54306,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CancelOperationRequest.decode = function decode(reader, length, error) { + CancelOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.CancelOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52356,7 +54324,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52387,9 +54355,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CancelOperationRequest.verify = function verify(message) { + CancelOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -52404,9 +54376,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest */ - CancelOperationRequest.fromObject = function fromObject(object) { + CancelOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.CancelOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.CancelOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -52482,7 +54458,7 @@ function DeleteOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52547,9 +54523,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteOperationRequest.decode = function decode(reader, length, error) { + DeleteOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.DeleteOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52561,7 +54541,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52592,9 +54572,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteOperationRequest.verify = function verify(message) { + DeleteOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -52609,9 +54593,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest */ - DeleteOperationRequest.fromObject = function fromObject(object) { + DeleteOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.DeleteOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.DeleteOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -52688,7 +54676,7 @@ function WaitOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52763,9 +54751,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WaitOperationRequest.decode = function decode(reader, length, error) { + WaitOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.WaitOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52777,11 +54769,11 @@ break; } case 2: { - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52812,14 +54804,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WaitOperationRequest.verify = function verify(message) { + WaitOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.timeout != null && message.hasOwnProperty("timeout")) { - var error = $root.google.protobuf.Duration.verify(message.timeout); + var error = $root.google.protobuf.Duration.verify(message.timeout, long + 1); if (error) return "timeout." + error; } @@ -52834,16 +54830,20 @@ * @param {Object.} object Plain object * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest */ - WaitOperationRequest.fromObject = function fromObject(object) { + WaitOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.WaitOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.WaitOperationRequest(); if (object.name != null) message.name = String(object.name); if (object.timeout != null) { if (typeof object.timeout !== "object") throw TypeError(".google.longrunning.WaitOperationRequest.timeout: object expected"); - message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout, long + 1); } return message; }; @@ -52922,7 +54922,7 @@ function OperationInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52997,9 +54997,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationInfo.decode = function decode(reader, length, error) { + OperationInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.OperationInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53015,7 +55019,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53046,9 +55050,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationInfo.verify = function verify(message) { + OperationInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.responseType != null && message.hasOwnProperty("responseType")) if (!$util.isString(message.responseType)) return "responseType: string expected"; @@ -53066,9 +55074,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.OperationInfo} OperationInfo */ - OperationInfo.fromObject = function fromObject(object) { + OperationInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.OperationInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.OperationInfo(); if (object.responseType != null) message.responseType = String(object.responseType); @@ -53165,7 +55177,7 @@ this.details = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53251,9 +55263,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Status.decode = function decode(reader, length, error) { + Status.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.rpc.Status(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53271,11 +55287,11 @@ case 3: { if (!(message.details && message.details.length)) message.details = []; - message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32())); + message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53306,9 +55322,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Status.verify = function verify(message) { + Status.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.code != null && message.hasOwnProperty("code")) if (!$util.isInteger(message.code)) return "code: integer expected"; @@ -53319,7 +55339,7 @@ if (!Array.isArray(message.details)) return "details: array expected"; for (var i = 0; i < message.details.length; ++i) { - var error = $root.google.protobuf.Any.verify(message.details[i]); + var error = $root.google.protobuf.Any.verify(message.details[i], long + 1); if (error) return "details." + error; } @@ -53335,9 +55355,13 @@ * @param {Object.} object Plain object * @returns {google.rpc.Status} Status */ - Status.fromObject = function fromObject(object) { + Status.fromObject = function fromObject(object, long) { if (object instanceof $root.google.rpc.Status) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.rpc.Status(); if (object.code != null) message.code = object.code | 0; @@ -53350,7 +55374,7 @@ for (var i = 0; i < object.details.length; ++i) { if (typeof object.details[i] !== "object") throw TypeError(".google.rpc.Status.details: object expected"); - message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i]); + message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i], long + 1); } } return message; @@ -53450,7 +55474,7 @@ function Money(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53535,9 +55559,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Money.decode = function decode(reader, length, error) { + Money.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.type.Money(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53557,7 +55585,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53588,9 +55616,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Money.verify = function verify(message) { + Money.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.currencyCode != null && message.hasOwnProperty("currencyCode")) if (!$util.isString(message.currencyCode)) return "currencyCode: string expected"; @@ -53611,9 +55643,13 @@ * @param {Object.} object Plain object * @returns {google.type.Money} Money */ - Money.fromObject = function fromObject(object) { + Money.fromObject = function fromObject(object, long) { if (object instanceof $root.google.type.Money) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.type.Money(); if (object.currencyCode != null) message.currencyCode = String(object.currencyCode); @@ -53726,7 +55762,7 @@ this.recipients = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53893,9 +55929,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PostalAddress.decode = function decode(reader, length, error) { + PostalAddress.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.type.PostalAddress(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53951,7 +55991,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53982,9 +56022,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PostalAddress.verify = function verify(message) { + PostalAddress.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.revision != null && message.hasOwnProperty("revision")) if (!$util.isInteger(message.revision)) return "revision: integer expected"; @@ -54037,9 +56081,13 @@ * @param {Object.} object Plain object * @returns {google.type.PostalAddress} PostalAddress */ - PostalAddress.fromObject = function fromObject(object) { + PostalAddress.fromObject = function fromObject(object, long) { if (object instanceof $root.google.type.PostalAddress) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.type.PostalAddress(); if (object.revision != null) message.revision = object.revision | 0; diff --git a/packages/google-cloud-domains/protos/protos.json b/packages/google-cloud-domains/protos/protos.json index 25ee731f2f39..3493049c4840 100644 --- a/packages/google-cloud-domains/protos/protos.json +++ b/packages/google-cloud-domains/protos/protos.json @@ -4598,7 +4598,14 @@ "type": "ServiceOptions", "id": 3 } - } + }, + "reserved": [ + [ + 4, + 4 + ], + "stream" + ] }, "MethodDescriptorProto": { "edition": "proto2", diff --git a/packages/google-cloud-domains/src/v1/domains_client.ts b/packages/google-cloud-domains/src/v1/domains_client.ts index 3c8619ae225b..24d53747ebc3 100644 --- a/packages/google-cloud-domains/src/v1/domains_client.ts +++ b/packages/google-cloud-domains/src/v1/domains_client.ts @@ -18,11 +18,20 @@ /* global window */ import type * as gax from 'google-gax'; -import type {Callback, CallOptions, Descriptors, ClientOptions, GrpcClientOptions, LROperation, PaginationCallback, GaxCall} from 'google-gax'; -import {Transform} from 'stream'; +import type { + Callback, + CallOptions, + Descriptors, + ClientOptions, + GrpcClientOptions, + LROperation, + PaginationCallback, + GaxCall, +} from 'google-gax'; +import { Transform } from 'stream'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); -import {loggingUtils as logging, decodeAnyProtosInArray} from 'google-gax'; +import { loggingUtils as logging, decodeAnyProtosInArray } from 'google-gax'; /** * Client JSON configuration object, loaded from @@ -44,7 +53,7 @@ export class DomainsClient { private _gaxModule: typeof gax | typeof gax.fallback; private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; private _protos: {}; - private _defaults: {[method: string]: gax.CallSettings}; + private _defaults: { [method: string]: gax.CallSettings }; private _universeDomain: string; private _servicePath: string; private _log = logging.log('domains'); @@ -57,10 +66,10 @@ export class DomainsClient { batching: {}, }; warn: (code: string, message: string, warnType?: string) => void; - innerApiCalls: {[name: string]: Function}; - pathTemplates: {[name: string]: gax.PathTemplate}; + innerApiCalls: { [name: string]: Function }; + pathTemplates: { [name: string]: gax.PathTemplate }; operationsClient: gax.OperationsClient; - domainsStub?: Promise<{[name: string]: Function}>; + domainsStub?: Promise<{ [name: string]: Function }>; /** * Construct an instance of DomainsClient. @@ -101,21 +110,42 @@ export class DomainsClient { * const client = new DomainsClient({fallback: true}, gax); * ``` */ - constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback) { + constructor( + opts?: ClientOptions, + gaxInstance?: typeof gax | typeof gax.fallback, + ) { // Ensure that options include all the required fields. const staticMembers = this.constructor as typeof DomainsClient; - if (opts?.universe_domain && opts?.universeDomain && opts?.universe_domain !== opts?.universeDomain) { - throw new Error('Please set either universe_domain or universeDomain, but not both.'); + if ( + opts?.universe_domain && + opts?.universeDomain && + opts?.universe_domain !== opts?.universeDomain + ) { + throw new Error( + 'Please set either universe_domain or universeDomain, but not both.', + ); } - const universeDomainEnvVar = (typeof process === 'object' && typeof process.env === 'object') ? process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] : undefined; - this._universeDomain = opts?.universeDomain ?? opts?.universe_domain ?? universeDomainEnvVar ?? 'googleapis.com'; + const universeDomainEnvVar = + typeof process === 'object' && typeof process.env === 'object' + ? process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] + : undefined; + this._universeDomain = + opts?.universeDomain ?? + opts?.universe_domain ?? + universeDomainEnvVar ?? + 'googleapis.com'; this._servicePath = 'domains.' + this._universeDomain; - const servicePath = opts?.servicePath || opts?.apiEndpoint || this._servicePath; - this._providedCustomServicePath = !!(opts?.servicePath || opts?.apiEndpoint); + const servicePath = + opts?.servicePath || opts?.apiEndpoint || this._servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); const port = opts?.port || staticMembers.port; const clientConfig = opts?.clientConfig ?? {}; - const fallback = opts?.fallback ?? (typeof window !== 'undefined' && typeof window?.fetch === 'function'); - opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({ servicePath, port, clientConfig, fallback }, opts); // Request numeric enum values if REST transport is used. opts.numericEnums = true; @@ -140,7 +170,7 @@ export class DomainsClient { this._opts = opts; // Save the auth object to the client, for use by other methods. - this.auth = (this._gaxGrpc.auth as gax.GoogleAuth); + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; // Set useJWTAccessWithScope on the auth object. this.auth.useJWTAccessWithScope = true; @@ -154,10 +184,7 @@ export class DomainsClient { } // Determine the client header string. - const clientHeader = [ - `gax/${this._gaxModule.version}`, - `gapic/${version}`, - ]; + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; if (typeof process === 'object' && 'versions' in process) { clientHeader.push(`gl-node/${process.versions.node}`); } else { @@ -179,10 +206,10 @@ export class DomainsClient { // Create useful helper objects for these. this.pathTemplates = { locationPathTemplate: new this._gaxModule.PathTemplate( - 'projects/{project}/locations/{location}' + 'projects/{project}/locations/{location}', ), registrationPathTemplate: new this._gaxModule.PathTemplate( - 'projects/{project}/locations/{location}/registrations/{registration}' + 'projects/{project}/locations/{location}/registrations/{registration}', ), }; @@ -190,8 +217,11 @@ export class DomainsClient { // (e.g. 50 results at a time, with tokens to get subsequent // pages). Denote the keys used for pagination and results. this.descriptors.page = { - listRegistrations: - new this._gaxModule.PageDescriptor('pageToken', 'nextPageToken', 'registrations') + listRegistrations: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'registrations', + ), }; const protoFilesRoot = this._gaxModule.protobufFromJSON(jsonProtos); @@ -200,85 +230,153 @@ export class DomainsClient { // rather than holding a request open. const lroOptions: GrpcClientOptions = { auth: this.auth, - grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, }; if (opts.fallback) { lroOptions.protoJson = protoFilesRoot; - lroOptions.httpRules = [{selector: 'google.cloud.location.Locations.GetLocation',get: '/v1/{name=projects/*/locations/*}',},{selector: 'google.cloud.location.Locations.ListLocations',get: '/v1/{name=projects/*}/locations',},{selector: 'google.iam.v1.IAMPolicy.GetIamPolicy',get: '/v1/{resource=projects/*/locations/*/registrations/*}:getIamPolicy',},{selector: 'google.iam.v1.IAMPolicy.SetIamPolicy',post: '/v1/{resource=projects/*/locations/*/registrations/*}:setIamPolicy',body: '*',},{selector: 'google.iam.v1.IAMPolicy.TestIamPermissions',post: '/v1/{resource=projects/*/locations/*/registrations/*}:testIamPermissions',body: '*',},{selector: 'google.longrunning.Operations.GetOperation',get: '/v1/{name=projects/*/locations/*/operations/*}',},{selector: 'google.longrunning.Operations.ListOperations',get: '/v1/{name=projects/*/locations/*}/operations',}]; + lroOptions.httpRules = [ + { + selector: 'google.cloud.location.Locations.GetLocation', + get: '/v1/{name=projects/*/locations/*}', + }, + { + selector: 'google.cloud.location.Locations.ListLocations', + get: '/v1/{name=projects/*}/locations', + }, + { + selector: 'google.iam.v1.IAMPolicy.GetIamPolicy', + get: '/v1/{resource=projects/*/locations/*/registrations/*}:getIamPolicy', + }, + { + selector: 'google.iam.v1.IAMPolicy.SetIamPolicy', + post: '/v1/{resource=projects/*/locations/*/registrations/*}:setIamPolicy', + body: '*', + }, + { + selector: 'google.iam.v1.IAMPolicy.TestIamPermissions', + post: '/v1/{resource=projects/*/locations/*/registrations/*}:testIamPermissions', + body: '*', + }, + { + selector: 'google.longrunning.Operations.GetOperation', + get: '/v1/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.ListOperations', + get: '/v1/{name=projects/*/locations/*}/operations', + }, + ]; } - this.operationsClient = this._gaxModule.lro(lroOptions).operationsClient(opts); + this.operationsClient = this._gaxModule + .lro(lroOptions) + .operationsClient(opts); const registerDomainResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1.Registration', + ) as gax.protobuf.Type; const registerDomainMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1.OperationMetadata', + ) as gax.protobuf.Type; const transferDomainResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1.Registration', + ) as gax.protobuf.Type; const transferDomainMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1.OperationMetadata', + ) as gax.protobuf.Type; const updateRegistrationResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1.Registration', + ) as gax.protobuf.Type; const updateRegistrationMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1.OperationMetadata', + ) as gax.protobuf.Type; const configureManagementSettingsResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1.Registration', + ) as gax.protobuf.Type; const configureManagementSettingsMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1.OperationMetadata', + ) as gax.protobuf.Type; const configureDnsSettingsResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1.Registration', + ) as gax.protobuf.Type; const configureDnsSettingsMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1.OperationMetadata', + ) as gax.protobuf.Type; const configureContactSettingsResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1.Registration', + ) as gax.protobuf.Type; const configureContactSettingsMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1.OperationMetadata', + ) as gax.protobuf.Type; const exportRegistrationResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1.Registration', + ) as gax.protobuf.Type; const exportRegistrationMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1.OperationMetadata', + ) as gax.protobuf.Type; const deleteRegistrationResponse = protoFilesRoot.lookup( - '.google.protobuf.Empty') as gax.protobuf.Type; + '.google.protobuf.Empty', + ) as gax.protobuf.Type; const deleteRegistrationMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1.OperationMetadata', + ) as gax.protobuf.Type; this.descriptors.longrunning = { registerDomain: new this._gaxModule.LongrunningDescriptor( this.operationsClient, registerDomainResponse.decode.bind(registerDomainResponse), - registerDomainMetadata.decode.bind(registerDomainMetadata)), + registerDomainMetadata.decode.bind(registerDomainMetadata), + ), transferDomain: new this._gaxModule.LongrunningDescriptor( this.operationsClient, transferDomainResponse.decode.bind(transferDomainResponse), - transferDomainMetadata.decode.bind(transferDomainMetadata)), + transferDomainMetadata.decode.bind(transferDomainMetadata), + ), updateRegistration: new this._gaxModule.LongrunningDescriptor( this.operationsClient, updateRegistrationResponse.decode.bind(updateRegistrationResponse), - updateRegistrationMetadata.decode.bind(updateRegistrationMetadata)), + updateRegistrationMetadata.decode.bind(updateRegistrationMetadata), + ), configureManagementSettings: new this._gaxModule.LongrunningDescriptor( this.operationsClient, - configureManagementSettingsResponse.decode.bind(configureManagementSettingsResponse), - configureManagementSettingsMetadata.decode.bind(configureManagementSettingsMetadata)), + configureManagementSettingsResponse.decode.bind( + configureManagementSettingsResponse, + ), + configureManagementSettingsMetadata.decode.bind( + configureManagementSettingsMetadata, + ), + ), configureDnsSettings: new this._gaxModule.LongrunningDescriptor( this.operationsClient, configureDnsSettingsResponse.decode.bind(configureDnsSettingsResponse), - configureDnsSettingsMetadata.decode.bind(configureDnsSettingsMetadata)), + configureDnsSettingsMetadata.decode.bind(configureDnsSettingsMetadata), + ), configureContactSettings: new this._gaxModule.LongrunningDescriptor( this.operationsClient, - configureContactSettingsResponse.decode.bind(configureContactSettingsResponse), - configureContactSettingsMetadata.decode.bind(configureContactSettingsMetadata)), + configureContactSettingsResponse.decode.bind( + configureContactSettingsResponse, + ), + configureContactSettingsMetadata.decode.bind( + configureContactSettingsMetadata, + ), + ), exportRegistration: new this._gaxModule.LongrunningDescriptor( this.operationsClient, exportRegistrationResponse.decode.bind(exportRegistrationResponse), - exportRegistrationMetadata.decode.bind(exportRegistrationMetadata)), + exportRegistrationMetadata.decode.bind(exportRegistrationMetadata), + ), deleteRegistration: new this._gaxModule.LongrunningDescriptor( this.operationsClient, deleteRegistrationResponse.decode.bind(deleteRegistrationResponse), - deleteRegistrationMetadata.decode.bind(deleteRegistrationMetadata)) + deleteRegistrationMetadata.decode.bind(deleteRegistrationMetadata), + ), }; // Put together the default options sent with requests. this._defaults = this._gaxGrpc.constructSettings( - 'google.cloud.domains.v1.Domains', gapicConfig as gax.ClientConfig, - opts.clientConfig || {}, {'x-goog-api-client': clientHeader.join(' ')}); + 'google.cloud.domains.v1.Domains', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + { 'x-goog-api-client': clientHeader.join(' ') }, + ); // Set up a dictionary of "inner API calls"; the core implementation // of calling the API is handled in `google-gax`, with this code @@ -309,28 +407,49 @@ export class DomainsClient { // Put together the "service stub" for // google.cloud.domains.v1.Domains. this.domainsStub = this._gaxGrpc.createStub( - this._opts.fallback ? - (this._protos as protobuf.Root).lookupService('google.cloud.domains.v1.Domains') : - // eslint-disable-next-line @typescript-eslint/no-explicit-any + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService( + 'google.cloud.domains.v1.Domains', + ) + : // eslint-disable-next-line @typescript-eslint/no-explicit-any (this._protos as any).google.cloud.domains.v1.Domains, - this._opts, this._providedCustomServicePath) as Promise<{[method: string]: Function}>; + this._opts, + this._providedCustomServicePath, + ) as Promise<{ [method: string]: Function }>; // Iterate over each of the methods that the service provides // and create an API call method for each. - const domainsStubMethods = - ['searchDomains', 'retrieveRegisterParameters', 'registerDomain', 'retrieveTransferParameters', 'transferDomain', 'listRegistrations', 'getRegistration', 'updateRegistration', 'configureManagementSettings', 'configureDnsSettings', 'configureContactSettings', 'exportRegistration', 'deleteRegistration', 'retrieveAuthorizationCode', 'resetAuthorizationCode']; + const domainsStubMethods = [ + 'searchDomains', + 'retrieveRegisterParameters', + 'registerDomain', + 'retrieveTransferParameters', + 'transferDomain', + 'listRegistrations', + 'getRegistration', + 'updateRegistration', + 'configureManagementSettings', + 'configureDnsSettings', + 'configureContactSettings', + 'exportRegistration', + 'deleteRegistration', + 'retrieveAuthorizationCode', + 'resetAuthorizationCode', + ]; for (const methodName of domainsStubMethods) { const callPromise = this.domainsStub.then( - stub => (...args: Array<{}>) => { - if (this._terminated) { - return Promise.reject('The client has already been closed.'); - } - const func = stub[methodName]; - return func.apply(stub, args); - }, - (err: Error|null|undefined) => () => { + (stub) => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { throw err; - }); + }, + ); const descriptor = this.descriptors.page[methodName] || @@ -340,7 +459,7 @@ export class DomainsClient { callPromise, this._defaults[methodName], descriptor, - this._opts.fallback + this._opts.fallback, ); this.innerApiCalls[methodName] = apiCall; @@ -355,8 +474,14 @@ export class DomainsClient { * @returns {string} The DNS address for this service. */ static get servicePath() { - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - process.emitWarning('Static servicePath is deprecated, please use the instance method instead.', 'DeprecationWarning'); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + process.emitWarning( + 'Static servicePath is deprecated, please use the instance method instead.', + 'DeprecationWarning', + ); } return 'domains.googleapis.com'; } @@ -367,8 +492,14 @@ export class DomainsClient { * @returns {string} The DNS address for this service. */ static get apiEndpoint() { - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - process.emitWarning('Static apiEndpoint is deprecated, please use the instance method instead.', 'DeprecationWarning'); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + process.emitWarning( + 'Static apiEndpoint is deprecated, please use the instance method instead.', + 'DeprecationWarning', + ); } return 'domains.googleapis.com'; } @@ -399,9 +530,7 @@ export class DomainsClient { * @returns {string[]} List of default scopes. */ static get scopes() { - return [ - 'https://www.googleapis.com/auth/cloud-platform' - ]; + return ['https://www.googleapis.com/auth/cloud-platform']; } getProjectId(): Promise; @@ -410,8 +539,9 @@ export class DomainsClient { * Return the project ID used by this class. * @returns {Promise} A promise that resolves to string containing the project ID. */ - getProjectId(callback?: Callback): - Promise|void { + getProjectId( + callback?: Callback, + ): Promise | void { if (callback) { this.auth.getProjectId(callback); return; @@ -422,1697 +552,2482 @@ export class DomainsClient { // ------------------- // -- Service calls -- // ------------------- -/** - * Searches for available domain names similar to the provided query. - * - * Availability results from this method are approximate; call - * `RetrieveRegisterParameters` on a domain before registering to confirm - * availability. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.query - * Required. String used to search for available domain names. - * @param {string} request.location - * Required. The location. Must be in the format `projects/* /locations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.SearchDomainsResponse|SearchDomainsResponse}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.search_domains.js - * region_tag:domains_v1_generated_Domains_SearchDomains_async - */ + /** + * Searches for available domain names similar to the provided query. + * + * Availability results from this method are approximate; call + * `RetrieveRegisterParameters` on a domain before registering to confirm + * availability. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.query + * Required. String used to search for available domain names. + * @param {string} request.location + * Required. The location. Must be in the format `projects/* /locations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.SearchDomainsResponse|SearchDomainsResponse}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.search_domains.js + * region_tag:domains_v1_generated_Domains_SearchDomains_async + */ searchDomains( - request?: protos.google.cloud.domains.v1.ISearchDomainsRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1.ISearchDomainsResponse, - protos.google.cloud.domains.v1.ISearchDomainsRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.ISearchDomainsRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1.ISearchDomainsResponse, + protos.google.cloud.domains.v1.ISearchDomainsRequest | undefined, + {} | undefined, + ] + >; searchDomains( - request: protos.google.cloud.domains.v1.ISearchDomainsRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1.ISearchDomainsResponse, - protos.google.cloud.domains.v1.ISearchDomainsRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.ISearchDomainsRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1.ISearchDomainsResponse, + protos.google.cloud.domains.v1.ISearchDomainsRequest | null | undefined, + {} | null | undefined + >, + ): void; searchDomains( - request: protos.google.cloud.domains.v1.ISearchDomainsRequest, - callback: Callback< - protos.google.cloud.domains.v1.ISearchDomainsResponse, - protos.google.cloud.domains.v1.ISearchDomainsRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.ISearchDomainsRequest, + callback: Callback< + protos.google.cloud.domains.v1.ISearchDomainsResponse, + protos.google.cloud.domains.v1.ISearchDomainsRequest | null | undefined, + {} | null | undefined + >, + ): void; searchDomains( - request?: protos.google.cloud.domains.v1.ISearchDomainsRequest, - optionsOrCallback?: CallOptions|Callback< - protos.google.cloud.domains.v1.ISearchDomainsResponse, - protos.google.cloud.domains.v1.ISearchDomainsRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.google.cloud.domains.v1.ISearchDomainsRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1.ISearchDomainsResponse, - protos.google.cloud.domains.v1.ISearchDomainsRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1.ISearchDomainsResponse, - protos.google.cloud.domains.v1.ISearchDomainsRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1.ISearchDomainsResponse, + protos.google.cloud.domains.v1.ISearchDomainsRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1.ISearchDomainsResponse, + protos.google.cloud.domains.v1.ISearchDomainsRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'location': request.location ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + location: request.location ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('searchDomains request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1.ISearchDomainsResponse, - protos.google.cloud.domains.v1.ISearchDomainsRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1.ISearchDomainsResponse, + | protos.google.cloud.domains.v1.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('searchDomains response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.searchDomains(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1.ISearchDomainsResponse, - protos.google.cloud.domains.v1.ISearchDomainsRequest|undefined, - {}|undefined - ]) => { - this._log.info('searchDomains response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .searchDomains(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1.ISearchDomainsResponse, + protos.google.cloud.domains.v1.ISearchDomainsRequest | undefined, + {} | undefined, + ]) => { + this._log.info('searchDomains response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets parameters needed to register a new domain name, including price and - * up-to-date availability. Use the returned values to call `RegisterDomain`. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.domainName - * Required. The domain name. Unicode domain names must be expressed in Punycode format. - * @param {string} request.location - * Required. The location. Must be in the format `projects/* /locations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.RetrieveRegisterParametersResponse|RetrieveRegisterParametersResponse}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.retrieve_register_parameters.js - * region_tag:domains_v1_generated_Domains_RetrieveRegisterParameters_async - */ + /** + * Gets parameters needed to register a new domain name, including price and + * up-to-date availability. Use the returned values to call `RegisterDomain`. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.domainName + * Required. The domain name. Unicode domain names must be expressed in Punycode format. + * @param {string} request.location + * Required. The location. Must be in the format `projects/* /locations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.RetrieveRegisterParametersResponse|RetrieveRegisterParametersResponse}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.retrieve_register_parameters.js + * region_tag:domains_v1_generated_Domains_RetrieveRegisterParameters_async + */ retrieveRegisterParameters( - request?: protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, + ( + | protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest + | undefined + ), + {} | undefined, + ] + >; retrieveRegisterParameters( - request: protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveRegisterParameters( - request: protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest, - callback: Callback< - protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest, + callback: Callback< + protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveRegisterParameters( - request?: protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest, - optionsOrCallback?: CallOptions|Callback< - protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, + ( + | protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest + | undefined + ), + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'location': request.location ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + location: request.location ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('retrieveRegisterParameters request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('retrieveRegisterParameters response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.retrieveRegisterParameters(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest|undefined, - {}|undefined - ]) => { - this._log.info('retrieveRegisterParameters response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .retrieveRegisterParameters(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse, + ( + | protos.google.cloud.domains.v1.IRetrieveRegisterParametersRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('retrieveRegisterParameters response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets parameters needed to transfer a domain name from another registrar to - * Cloud Domains. For domains managed by Google Domains, transferring to Cloud - * Domains is not supported. - * - * - * Use the returned values to call `TransferDomain`. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.domainName - * Required. The domain name. Unicode domain names must be expressed in Punycode format. - * @param {string} request.location - * Required. The location. Must be in the format `projects/* /locations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.RetrieveTransferParametersResponse|RetrieveTransferParametersResponse}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.retrieve_transfer_parameters.js - * region_tag:domains_v1_generated_Domains_RetrieveTransferParameters_async - */ + /** + * Gets parameters needed to transfer a domain name from another registrar to + * Cloud Domains. For domains managed by Google Domains, transferring to Cloud + * Domains is not supported. + * + * + * Use the returned values to call `TransferDomain`. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.domainName + * Required. The domain name. Unicode domain names must be expressed in Punycode format. + * @param {string} request.location + * Required. The location. Must be in the format `projects/* /locations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.RetrieveTransferParametersResponse|RetrieveTransferParametersResponse}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.retrieve_transfer_parameters.js + * region_tag:domains_v1_generated_Domains_RetrieveTransferParameters_async + */ retrieveTransferParameters( - request?: protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, + ( + | protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest + | undefined + ), + {} | undefined, + ] + >; retrieveTransferParameters( - request: protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveTransferParameters( - request: protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest, - callback: Callback< - protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest, + callback: Callback< + protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveTransferParameters( - request?: protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, + ( + | protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest + | undefined + ), + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'location': request.location ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + location: request.location ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('retrieveTransferParameters request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('retrieveTransferParameters response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.retrieveTransferParameters(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest|undefined, - {}|undefined - ]) => { - this._log.info('retrieveTransferParameters response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .retrieveTransferParameters(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse, + ( + | protos.google.cloud.domains.v1.IRetrieveTransferParametersRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('retrieveTransferParameters response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets the details of a `Registration` resource. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The name of the `Registration` to get, in the format - * `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.Registration|Registration}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.get_registration.js - * region_tag:domains_v1_generated_Domains_GetRegistration_async - */ + /** + * Gets the details of a `Registration` resource. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The name of the `Registration` to get, in the format + * `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.Registration|Registration}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.get_registration.js + * region_tag:domains_v1_generated_Domains_GetRegistration_async + */ getRegistration( - request?: protos.google.cloud.domains.v1.IGetRegistrationRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1.IRegistration, - protos.google.cloud.domains.v1.IGetRegistrationRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IGetRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IGetRegistrationRequest | undefined, + {} | undefined, + ] + >; getRegistration( - request: protos.google.cloud.domains.v1.IGetRegistrationRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1.IRegistration, - protos.google.cloud.domains.v1.IGetRegistrationRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IGetRegistrationRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IGetRegistrationRequest | null | undefined, + {} | null | undefined + >, + ): void; getRegistration( - request: protos.google.cloud.domains.v1.IGetRegistrationRequest, - callback: Callback< - protos.google.cloud.domains.v1.IRegistration, - protos.google.cloud.domains.v1.IGetRegistrationRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IGetRegistrationRequest, + callback: Callback< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IGetRegistrationRequest | null | undefined, + {} | null | undefined + >, + ): void; getRegistration( - request?: protos.google.cloud.domains.v1.IGetRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.google.cloud.domains.v1.IGetRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1.IRegistration, - protos.google.cloud.domains.v1.IGetRegistrationRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.google.cloud.domains.v1.IRegistration, - protos.google.cloud.domains.v1.IGetRegistrationRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1.IRegistration, - protos.google.cloud.domains.v1.IGetRegistrationRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IGetRegistrationRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IGetRegistrationRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('getRegistration request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1.IRegistration, - protos.google.cloud.domains.v1.IGetRegistrationRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1.IRegistration, + | protos.google.cloud.domains.v1.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('getRegistration response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.getRegistration(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1.IRegistration, - protos.google.cloud.domains.v1.IGetRegistrationRequest|undefined, - {}|undefined - ]) => { - this._log.info('getRegistration response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .getRegistration(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IGetRegistrationRequest | undefined, + {} | undefined, + ]) => { + this._log.info('getRegistration response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets the authorization code of the `Registration` for the purpose of - * transferring the domain to another registrar. - * - * You can call this method only after 60 days have elapsed since the initial - * domain registration. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose authorization code is being retrieved, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.AuthorizationCode|AuthorizationCode}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.retrieve_authorization_code.js - * region_tag:domains_v1_generated_Domains_RetrieveAuthorizationCode_async - */ + /** + * Gets the authorization code of the `Registration` for the purpose of + * transferring the domain to another registrar. + * + * You can call this method only after 60 days have elapsed since the initial + * domain registration. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose authorization code is being retrieved, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.AuthorizationCode|AuthorizationCode}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.retrieve_authorization_code.js + * region_tag:domains_v1_generated_Domains_RetrieveAuthorizationCode_async + */ retrieveAuthorizationCode( - request?: protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ] + >; retrieveAuthorizationCode( - request: protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1.IAuthorizationCode, + | protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveAuthorizationCode( - request: protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest, - callback: Callback< - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest, + callback: Callback< + protos.google.cloud.domains.v1.IAuthorizationCode, + | protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveAuthorizationCode( - request?: protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest, - optionsOrCallback?: CallOptions|Callback< - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1.IAuthorizationCode, + | protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('retrieveAuthorizationCode request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1.IAuthorizationCode, + | protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('retrieveAuthorizationCode response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.retrieveAuthorizationCode(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest|undefined, - {}|undefined - ]) => { - this._log.info('retrieveAuthorizationCode response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .retrieveAuthorizationCode(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1.IRetrieveAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('retrieveAuthorizationCode response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Resets the authorization code of the `Registration` to a new random string. - * - * You can call this method only after 60 days have elapsed since the initial - * domain registration. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose authorization code is being reset, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.AuthorizationCode|AuthorizationCode}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.reset_authorization_code.js - * region_tag:domains_v1_generated_Domains_ResetAuthorizationCode_async - */ + /** + * Resets the authorization code of the `Registration` to a new random string. + * + * You can call this method only after 60 days have elapsed since the initial + * domain registration. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose authorization code is being reset, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1.AuthorizationCode|AuthorizationCode}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.reset_authorization_code.js + * region_tag:domains_v1_generated_Domains_ResetAuthorizationCode_async + */ resetAuthorizationCode( - request?: protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1.IAuthorizationCode, + protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest | undefined, + {} | undefined, + ] + >; resetAuthorizationCode( - request: protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1.IAuthorizationCode, + | protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; resetAuthorizationCode( - request: protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest, - callback: Callback< - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest, + callback: Callback< + protos.google.cloud.domains.v1.IAuthorizationCode, + | protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; resetAuthorizationCode( - request?: protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest, - optionsOrCallback?: CallOptions|Callback< - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1.IAuthorizationCode, + | protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1.IAuthorizationCode, + protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('resetAuthorizationCode request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1.IAuthorizationCode, + | protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('resetAuthorizationCode response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.resetAuthorizationCode(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1.IAuthorizationCode, - protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest|undefined, - {}|undefined - ]) => { - this._log.info('resetAuthorizationCode response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .resetAuthorizationCode(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1.IResetAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('resetAuthorizationCode response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Registers a new domain name and creates a corresponding `Registration` - * resource. - * - * Call `RetrieveRegisterParameters` first to check availability of the domain - * name and determine parameters like price that are needed to build a call to - * this method. - * - * A successful call creates a `Registration` resource in state - * `REGISTRATION_PENDING`, which resolves to `ACTIVE` within 1-2 - * minutes, indicating that the domain was successfully registered. If the - * resource ends up in state `REGISTRATION_FAILED`, it indicates that the - * domain was not registered successfully, and you can safely delete the - * resource and retry registration. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The parent resource of the `Registration`. Must be in the - * format `projects/* /locations/*`. - * @param {google.cloud.domains.v1.Registration} request.registration - * Required. The complete `Registration` resource to be created. - * @param {number[]} request.domainNotices - * The list of domain notices that you acknowledge. Call - * `RetrieveRegisterParameters` to see the notices that need acknowledgement. - * @param {number[]} request.contactNotices - * The list of contact notices that the caller acknowledges. The notices - * needed here depend on the values specified in - * `registration.contact_settings`. - * @param {google.type.Money} request.yearlyPrice - * Required. Yearly price to register or renew the domain. - * The value that should be put here can be obtained from - * RetrieveRegisterParameters or SearchDomains calls. - * @param {boolean} request.validateOnly - * When true, only validation is performed, without actually registering - * the domain. Follows: - * https://cloud.google.com/apis/design/design_patterns#request_validation - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.register_domain.js - * region_tag:domains_v1_generated_Domains_RegisterDomain_async - */ + /** + * Registers a new domain name and creates a corresponding `Registration` + * resource. + * + * Call `RetrieveRegisterParameters` first to check availability of the domain + * name and determine parameters like price that are needed to build a call to + * this method. + * + * A successful call creates a `Registration` resource in state + * `REGISTRATION_PENDING`, which resolves to `ACTIVE` within 1-2 + * minutes, indicating that the domain was successfully registered. If the + * resource ends up in state `REGISTRATION_FAILED`, it indicates that the + * domain was not registered successfully, and you can safely delete the + * resource and retry registration. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent resource of the `Registration`. Must be in the + * format `projects/* /locations/*`. + * @param {google.cloud.domains.v1.Registration} request.registration + * Required. The complete `Registration` resource to be created. + * @param {number[]} request.domainNotices + * The list of domain notices that you acknowledge. Call + * `RetrieveRegisterParameters` to see the notices that need acknowledgement. + * @param {number[]} request.contactNotices + * The list of contact notices that the caller acknowledges. The notices + * needed here depend on the values specified in + * `registration.contact_settings`. + * @param {google.type.Money} request.yearlyPrice + * Required. Yearly price to register or renew the domain. + * The value that should be put here can be obtained from + * RetrieveRegisterParameters or SearchDomains calls. + * @param {boolean} request.validateOnly + * When true, only validation is performed, without actually registering + * the domain. Follows: + * https://cloud.google.com/apis/design/design_patterns#request_validation + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.register_domain.js + * region_tag:domains_v1_generated_Domains_RegisterDomain_async + */ registerDomain( - request?: protos.google.cloud.domains.v1.IRegisterDomainRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IRegisterDomainRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; registerDomain( - request: protos.google.cloud.domains.v1.IRegisterDomainRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IRegisterDomainRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; registerDomain( - request: protos.google.cloud.domains.v1.IRegisterDomainRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IRegisterDomainRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; registerDomain( - request?: protos.google.cloud.domains.v1.IRegisterDomainRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1.IRegisterDomainRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('registerDomain response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('registerDomain request %j', request); - return this.innerApiCalls.registerDomain(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('registerDomain response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .registerDomain(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('registerDomain response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `registerDomain()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.register_domain.js - * region_tag:domains_v1_generated_Domains_RegisterDomain_async - */ - async checkRegisterDomainProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `registerDomain()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.register_domain.js + * region_tag:domains_v1_generated_Domains_RegisterDomain_async + */ + async checkRegisterDomainProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + > + > { this._log.info('registerDomain long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.registerDomain, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.registerDomain, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + >; } -/** - * Transfers a domain name from another registrar to Cloud Domains. For - * domains managed by Google Domains, transferring to Cloud Domains is not - * supported. - * - * - * Before calling this method, go to the domain's current registrar to unlock - * the domain for transfer and retrieve the domain's transfer authorization - * code. Then call `RetrieveTransferParameters` to confirm that the domain is - * unlocked and to get values needed to build a call to this method. - * - * A successful call creates a `Registration` resource in state - * `TRANSFER_PENDING`. It can take several days to complete the transfer - * process. The registrant can often speed up this process by approving the - * transfer through the current registrar, either by clicking a link in an - * email from the registrar or by visiting the registrar's website. - * - * A few minutes after transfer approval, the resource transitions to state - * `ACTIVE`, indicating that the transfer was successful. If the transfer is - * rejected or the request expires without being approved, the resource can - * end up in state `TRANSFER_FAILED`. If transfer fails, you can safely delete - * the resource and retry the transfer. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The parent resource of the `Registration`. Must be in the - * format `projects/* /locations/*`. - * @param {google.cloud.domains.v1.Registration} request.registration - * Required. The complete `Registration` resource to be created. - * - * You can leave `registration.dns_settings` unset to import the - * domain's current DNS configuration from its current registrar. Use this - * option only if you are sure that the domain's current DNS service - * does not cease upon transfer, as is often the case for DNS services - * provided for free by the registrar. - * @param {number[]} request.contactNotices - * The list of contact notices that you acknowledge. The notices - * needed here depend on the values specified in - * `registration.contact_settings`. - * @param {google.type.Money} request.yearlyPrice - * Required. Acknowledgement of the price to transfer or renew the domain for one year. - * Call `RetrieveTransferParameters` to obtain the price, which you must - * acknowledge. - * @param {google.cloud.domains.v1.AuthorizationCode} request.authorizationCode - * The domain's transfer authorization code. You can obtain this from the - * domain's current registrar. - * @param {boolean} request.validateOnly - * Validate the request without actually transferring the domain. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.transfer_domain.js - * region_tag:domains_v1_generated_Domains_TransferDomain_async - */ + /** + * Transfers a domain name from another registrar to Cloud Domains. For + * domains managed by Google Domains, transferring to Cloud Domains is not + * supported. + * + * + * Before calling this method, go to the domain's current registrar to unlock + * the domain for transfer and retrieve the domain's transfer authorization + * code. Then call `RetrieveTransferParameters` to confirm that the domain is + * unlocked and to get values needed to build a call to this method. + * + * A successful call creates a `Registration` resource in state + * `TRANSFER_PENDING`. It can take several days to complete the transfer + * process. The registrant can often speed up this process by approving the + * transfer through the current registrar, either by clicking a link in an + * email from the registrar or by visiting the registrar's website. + * + * A few minutes after transfer approval, the resource transitions to state + * `ACTIVE`, indicating that the transfer was successful. If the transfer is + * rejected or the request expires without being approved, the resource can + * end up in state `TRANSFER_FAILED`. If transfer fails, you can safely delete + * the resource and retry the transfer. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent resource of the `Registration`. Must be in the + * format `projects/* /locations/*`. + * @param {google.cloud.domains.v1.Registration} request.registration + * Required. The complete `Registration` resource to be created. + * + * You can leave `registration.dns_settings` unset to import the + * domain's current DNS configuration from its current registrar. Use this + * option only if you are sure that the domain's current DNS service + * does not cease upon transfer, as is often the case for DNS services + * provided for free by the registrar. + * @param {number[]} request.contactNotices + * The list of contact notices that you acknowledge. The notices + * needed here depend on the values specified in + * `registration.contact_settings`. + * @param {google.type.Money} request.yearlyPrice + * Required. Acknowledgement of the price to transfer or renew the domain for one year. + * Call `RetrieveTransferParameters` to obtain the price, which you must + * acknowledge. + * @param {google.cloud.domains.v1.AuthorizationCode} request.authorizationCode + * The domain's transfer authorization code. You can obtain this from the + * domain's current registrar. + * @param {boolean} request.validateOnly + * Validate the request without actually transferring the domain. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.transfer_domain.js + * region_tag:domains_v1_generated_Domains_TransferDomain_async + */ transferDomain( - request?: protos.google.cloud.domains.v1.ITransferDomainRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.ITransferDomainRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; transferDomain( - request: protos.google.cloud.domains.v1.ITransferDomainRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.ITransferDomainRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; transferDomain( - request: protos.google.cloud.domains.v1.ITransferDomainRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.ITransferDomainRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; transferDomain( - request?: protos.google.cloud.domains.v1.ITransferDomainRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1.ITransferDomainRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('transferDomain response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('transferDomain request %j', request); - return this.innerApiCalls.transferDomain(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('transferDomain response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .transferDomain(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('transferDomain response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `transferDomain()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.transfer_domain.js - * region_tag:domains_v1_generated_Domains_TransferDomain_async - */ - async checkTransferDomainProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `transferDomain()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.transfer_domain.js + * region_tag:domains_v1_generated_Domains_TransferDomain_async + */ + async checkTransferDomainProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + > + > { this._log.info('transferDomain long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.transferDomain, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.transferDomain, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + >; } -/** - * Updates select fields of a `Registration` resource, notably `labels`. To - * update other fields, use the appropriate custom update method: - * - * * To update management settings, see `ConfigureManagementSettings` - * * To update DNS configuration, see `ConfigureDnsSettings` - * * To update contact information, see `ConfigureContactSettings` - * - * @param {Object} request - * The request object that will be sent. - * @param {google.cloud.domains.v1.Registration} request.registration - * Fields of the `Registration` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the labels are being updated, the `update_mask` is - * `"labels"`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.update_registration.js - * region_tag:domains_v1_generated_Domains_UpdateRegistration_async - */ + /** + * Updates select fields of a `Registration` resource, notably `labels`. To + * update other fields, use the appropriate custom update method: + * + * * To update management settings, see `ConfigureManagementSettings` + * * To update DNS configuration, see `ConfigureDnsSettings` + * * To update contact information, see `ConfigureContactSettings` + * + * @param {Object} request + * The request object that will be sent. + * @param {google.cloud.domains.v1.Registration} request.registration + * Fields of the `Registration` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the labels are being updated, the `update_mask` is + * `"labels"`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.update_registration.js + * region_tag:domains_v1_generated_Domains_UpdateRegistration_async + */ updateRegistration( - request?: protos.google.cloud.domains.v1.IUpdateRegistrationRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IUpdateRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; updateRegistration( - request: protos.google.cloud.domains.v1.IUpdateRegistrationRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IUpdateRegistrationRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; updateRegistration( - request: protos.google.cloud.domains.v1.IUpdateRegistrationRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IUpdateRegistrationRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; updateRegistration( - request?: protos.google.cloud.domains.v1.IUpdateRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1.IUpdateRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration.name': request.registration!.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + 'registration.name': request.registration!.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('updateRegistration response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('updateRegistration request %j', request); - return this.innerApiCalls.updateRegistration(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('updateRegistration response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .updateRegistration(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('updateRegistration response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `updateRegistration()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.update_registration.js - * region_tag:domains_v1_generated_Domains_UpdateRegistration_async - */ - async checkUpdateRegistrationProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `updateRegistration()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.update_registration.js + * region_tag:domains_v1_generated_Domains_UpdateRegistration_async + */ + async checkUpdateRegistrationProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + > + > { this._log.info('updateRegistration long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.updateRegistration, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.updateRegistration, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + >; } -/** - * Updates a `Registration`'s management settings. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose management settings are being updated, - * in the format `projects/* /locations/* /registrations/*`. - * @param {google.cloud.domains.v1.ManagementSettings} request.managementSettings - * Fields of the `ManagementSettings` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the transfer lock is being updated, the `update_mask` - * is `"transfer_lock_state"`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.configure_management_settings.js - * region_tag:domains_v1_generated_Domains_ConfigureManagementSettings_async - */ + /** + * Updates a `Registration`'s management settings. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose management settings are being updated, + * in the format `projects/* /locations/* /registrations/*`. + * @param {google.cloud.domains.v1.ManagementSettings} request.managementSettings + * Fields of the `ManagementSettings` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the transfer lock is being updated, the `update_mask` + * is `"transfer_lock_state"`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.configure_management_settings.js + * region_tag:domains_v1_generated_Domains_ConfigureManagementSettings_async + */ configureManagementSettings( - request?: protos.google.cloud.domains.v1.IConfigureManagementSettingsRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IConfigureManagementSettingsRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; configureManagementSettings( - request: protos.google.cloud.domains.v1.IConfigureManagementSettingsRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IConfigureManagementSettingsRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureManagementSettings( - request: protos.google.cloud.domains.v1.IConfigureManagementSettingsRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IConfigureManagementSettingsRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureManagementSettings( - request?: protos.google.cloud.domains.v1.IConfigureManagementSettingsRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1.IConfigureManagementSettingsRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { - this._log.info('configureManagementSettings response %j', rawResponse); + this._log.info( + 'configureManagementSettings response %j', + rawResponse, + ); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('configureManagementSettings request %j', request); - return this.innerApiCalls.configureManagementSettings(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('configureManagementSettings response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .configureManagementSettings(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info( + 'configureManagementSettings response %j', + rawResponse, + ); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `configureManagementSettings()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.configure_management_settings.js - * region_tag:domains_v1_generated_Domains_ConfigureManagementSettings_async - */ - async checkConfigureManagementSettingsProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `configureManagementSettings()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.configure_management_settings.js + * region_tag:domains_v1_generated_Domains_ConfigureManagementSettings_async + */ + async checkConfigureManagementSettingsProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + > + > { this._log.info('configureManagementSettings long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.configureManagementSettings, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.configureManagementSettings, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + >; } -/** - * Updates a `Registration`'s DNS settings. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose DNS settings are being updated, - * in the format `projects/* /locations/* /registrations/*`. - * @param {google.cloud.domains.v1.DnsSettings} request.dnsSettings - * Fields of the `DnsSettings` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the name servers are being updated for an existing - * Custom DNS configuration, the `update_mask` is - * `"custom_dns.name_servers"`. - * - * When changing the DNS provider from one type to another, pass the new - * provider's field name as part of the field mask. For example, when changing - * from a Google Domains DNS configuration to a Custom DNS configuration, the - * `update_mask` is `"custom_dns"`. // - * @param {boolean} request.validateOnly - * Validate the request without actually updating the DNS settings. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.configure_dns_settings.js - * region_tag:domains_v1_generated_Domains_ConfigureDnsSettings_async - */ + /** + * Updates a `Registration`'s DNS settings. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose DNS settings are being updated, + * in the format `projects/* /locations/* /registrations/*`. + * @param {google.cloud.domains.v1.DnsSettings} request.dnsSettings + * Fields of the `DnsSettings` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the name servers are being updated for an existing + * Custom DNS configuration, the `update_mask` is + * `"custom_dns.name_servers"`. + * + * When changing the DNS provider from one type to another, pass the new + * provider's field name as part of the field mask. For example, when changing + * from a Google Domains DNS configuration to a Custom DNS configuration, the + * `update_mask` is `"custom_dns"`. // + * @param {boolean} request.validateOnly + * Validate the request without actually updating the DNS settings. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.configure_dns_settings.js + * region_tag:domains_v1_generated_Domains_ConfigureDnsSettings_async + */ configureDnsSettings( - request?: protos.google.cloud.domains.v1.IConfigureDnsSettingsRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IConfigureDnsSettingsRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; configureDnsSettings( - request: protos.google.cloud.domains.v1.IConfigureDnsSettingsRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IConfigureDnsSettingsRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureDnsSettings( - request: protos.google.cloud.domains.v1.IConfigureDnsSettingsRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IConfigureDnsSettingsRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureDnsSettings( - request?: protos.google.cloud.domains.v1.IConfigureDnsSettingsRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1.IConfigureDnsSettingsRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('configureDnsSettings response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('configureDnsSettings request %j', request); - return this.innerApiCalls.configureDnsSettings(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('configureDnsSettings response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .configureDnsSettings(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('configureDnsSettings response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `configureDnsSettings()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.configure_dns_settings.js - * region_tag:domains_v1_generated_Domains_ConfigureDnsSettings_async - */ - async checkConfigureDnsSettingsProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `configureDnsSettings()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.configure_dns_settings.js + * region_tag:domains_v1_generated_Domains_ConfigureDnsSettings_async + */ + async checkConfigureDnsSettingsProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + > + > { this._log.info('configureDnsSettings long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.configureDnsSettings, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.configureDnsSettings, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + >; } -/** - * Updates a `Registration`'s contact settings. Some changes require - * confirmation by the domain's registrant contact . - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose contact settings are being updated, - * in the format `projects/* /locations/* /registrations/*`. - * @param {google.cloud.domains.v1.ContactSettings} request.contactSettings - * Fields of the `ContactSettings` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the registrant contact is being updated, the - * `update_mask` is `"registrant_contact"`. - * @param {number[]} request.contactNotices - * The list of contact notices that the caller acknowledges. The notices - * needed here depend on the values specified in `contact_settings`. - * @param {boolean} request.validateOnly - * Validate the request without actually updating the contact settings. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.configure_contact_settings.js - * region_tag:domains_v1_generated_Domains_ConfigureContactSettings_async - */ + /** + * Updates a `Registration`'s contact settings. Some changes require + * confirmation by the domain's registrant contact . + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose contact settings are being updated, + * in the format `projects/* /locations/* /registrations/*`. + * @param {google.cloud.domains.v1.ContactSettings} request.contactSettings + * Fields of the `ContactSettings` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the registrant contact is being updated, the + * `update_mask` is `"registrant_contact"`. + * @param {number[]} request.contactNotices + * The list of contact notices that the caller acknowledges. The notices + * needed here depend on the values specified in `contact_settings`. + * @param {boolean} request.validateOnly + * Validate the request without actually updating the contact settings. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.configure_contact_settings.js + * region_tag:domains_v1_generated_Domains_ConfigureContactSettings_async + */ configureContactSettings( - request?: protos.google.cloud.domains.v1.IConfigureContactSettingsRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IConfigureContactSettingsRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; configureContactSettings( - request: protos.google.cloud.domains.v1.IConfigureContactSettingsRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IConfigureContactSettingsRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureContactSettings( - request: protos.google.cloud.domains.v1.IConfigureContactSettingsRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IConfigureContactSettingsRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureContactSettings( - request?: protos.google.cloud.domains.v1.IConfigureContactSettingsRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1.IConfigureContactSettingsRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('configureContactSettings response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('configureContactSettings request %j', request); - return this.innerApiCalls.configureContactSettings(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('configureContactSettings response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .configureContactSettings(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('configureContactSettings response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `configureContactSettings()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.configure_contact_settings.js - * region_tag:domains_v1_generated_Domains_ConfigureContactSettings_async - */ - async checkConfigureContactSettingsProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `configureContactSettings()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.configure_contact_settings.js + * region_tag:domains_v1_generated_Domains_ConfigureContactSettings_async + */ + async checkConfigureContactSettingsProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + > + > { this._log.info('configureContactSettings long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.configureContactSettings, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.configureContactSettings, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + >; } -/** - * Exports a `Registration` resource, such that it is no longer managed by - * Cloud Domains. - * - * When an active domain is successfully exported, you can continue to use the - * domain in [Google Domains](https://domains.google/) until it expires. The - * calling user becomes the domain's sole owner in Google Domains, and - * permissions for the domain are subsequently managed there. The domain does - * not renew automatically unless the new owner sets up billing in Google - * Domains. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The name of the `Registration` to export, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.export_registration.js - * region_tag:domains_v1_generated_Domains_ExportRegistration_async - */ + /** + * Exports a `Registration` resource, such that it is no longer managed by + * Cloud Domains. + * + * When an active domain is successfully exported, you can continue to use the + * domain in [Google Domains](https://domains.google/) until it expires. The + * calling user becomes the domain's sole owner in Google Domains, and + * permissions for the domain are subsequently managed there. The domain does + * not renew automatically unless the new owner sets up billing in Google + * Domains. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The name of the `Registration` to export, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.export_registration.js + * region_tag:domains_v1_generated_Domains_ExportRegistration_async + */ exportRegistration( - request?: protos.google.cloud.domains.v1.IExportRegistrationRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IExportRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; exportRegistration( - request: protos.google.cloud.domains.v1.IExportRegistrationRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IExportRegistrationRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; exportRegistration( - request: protos.google.cloud.domains.v1.IExportRegistrationRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IExportRegistrationRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; exportRegistration( - request?: protos.google.cloud.domains.v1.IExportRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1.IExportRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('exportRegistration response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('exportRegistration request %j', request); - return this.innerApiCalls.exportRegistration(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('exportRegistration response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .exportRegistration(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('exportRegistration response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `exportRegistration()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.export_registration.js - * region_tag:domains_v1_generated_Domains_ExportRegistration_async - */ - async checkExportRegistrationProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `exportRegistration()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.export_registration.js + * region_tag:domains_v1_generated_Domains_ExportRegistration_async + */ + async checkExportRegistrationProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + > + > { this._log.info('exportRegistration long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.exportRegistration, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.exportRegistration, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1.Registration, + protos.google.cloud.domains.v1.OperationMetadata + >; } -/** - * Deletes a `Registration` resource. - * - * This method works on any `Registration` resource using [Subscription or - * Commitment billing](/domains/pricing#billing-models), provided that the - * resource was created at least 1 day in the past. - * - * For `Registration` resources using - * [Monthly billing](/domains/pricing#billing-models), this method works if: - * - * * `state` is `EXPORTED` with `expire_time` in the past - * * `state` is `REGISTRATION_FAILED` - * * `state` is `TRANSFER_FAILED` - * - * When an active registration is successfully deleted, you can continue to - * use the domain in [Google Domains](https://domains.google/) until it - * expires. The calling user becomes the domain's sole owner in Google - * Domains, and permissions for the domain are subsequently managed there. The - * domain does not renew automatically unless the new owner sets up billing in - * Google Domains. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The name of the `Registration` to delete, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.delete_registration.js - * region_tag:domains_v1_generated_Domains_DeleteRegistration_async - */ + /** + * Deletes a `Registration` resource. + * + * This method works on any `Registration` resource using [Subscription or + * Commitment billing](/domains/pricing#billing-models), provided that the + * resource was created at least 1 day in the past. + * + * For `Registration` resources using + * [Monthly billing](/domains/pricing#billing-models), this method works if: + * + * * `state` is `EXPORTED` with `expire_time` in the past + * * `state` is `REGISTRATION_FAILED` + * * `state` is `TRANSFER_FAILED` + * + * When an active registration is successfully deleted, you can continue to + * use the domain in [Google Domains](https://domains.google/) until it + * expires. The calling user becomes the domain's sole owner in Google + * Domains, and permissions for the domain are subsequently managed there. The + * domain does not renew automatically unless the new owner sets up billing in + * Google Domains. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The name of the `Registration` to delete, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.delete_registration.js + * region_tag:domains_v1_generated_Domains_DeleteRegistration_async + */ deleteRegistration( - request?: protos.google.cloud.domains.v1.IDeleteRegistrationRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1.IDeleteRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; deleteRegistration( - request: protos.google.cloud.domains.v1.IDeleteRegistrationRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IDeleteRegistrationRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; deleteRegistration( - request: protos.google.cloud.domains.v1.IDeleteRegistrationRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1.IDeleteRegistrationRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; deleteRegistration( - request?: protos.google.cloud.domains.v1.IDeleteRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1.IDeleteRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('deleteRegistration response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('deleteRegistration request %j', request); - return this.innerApiCalls.deleteRegistration(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('deleteRegistration response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .deleteRegistration(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('deleteRegistration response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `deleteRegistration()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.delete_registration.js - * region_tag:domains_v1_generated_Domains_DeleteRegistration_async - */ - async checkDeleteRegistrationProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `deleteRegistration()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.delete_registration.js + * region_tag:domains_v1_generated_Domains_DeleteRegistration_async + */ + async checkDeleteRegistrationProgress( + name: string, + ): Promise< + LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.domains.v1.OperationMetadata + > + > { this._log.info('deleteRegistration long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.deleteRegistration, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.deleteRegistration, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.domains.v1.OperationMetadata + >; } - /** - * Lists the `Registration` resources in a project. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The project and location from which to list `Registration`s, specified in - * the format `projects/* /locations/*`. - * @param {number} request.pageSize - * Maximum number of results to return. - * @param {string} request.pageToken - * When set to the `next_page_token` from a prior response, provides the next - * page of results. - * @param {string} request.filter - * Filter expression to restrict the `Registration`s returned. - * - * The expression must specify the field name, a comparison operator, and the - * value that you want to use for filtering. The value must be a string, a - * number, a boolean, or an enum value. The comparison operator should be one - * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. - * - * For example, to filter to a specific domain name, use an expression like - * `domainName="example.com"`. You can also check for the existence of a - * field; for example, to find domains using custom DNS settings, use an - * expression like `dnsSettings.customDns:*`. - * - * You can also create compound filters by combining expressions with the - * `AND` and `OR` operators. For example, to find domains that are suspended - * or have specific issues flagged, use an expression like - * `(state=SUSPENDED) OR (issue:*)`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is Array of {@link protos.google.cloud.domains.v1.Registration|Registration}. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed and will merge results from all the pages into this array. - * Note that it can affect your quota. - * We recommend using `listRegistrationsAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Lists the `Registration` resources in a project. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The project and location from which to list `Registration`s, specified in + * the format `projects/* /locations/*`. + * @param {number} request.pageSize + * Maximum number of results to return. + * @param {string} request.pageToken + * When set to the `next_page_token` from a prior response, provides the next + * page of results. + * @param {string} request.filter + * Filter expression to restrict the `Registration`s returned. + * + * The expression must specify the field name, a comparison operator, and the + * value that you want to use for filtering. The value must be a string, a + * number, a boolean, or an enum value. The comparison operator should be one + * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. + * + * For example, to filter to a specific domain name, use an expression like + * `domainName="example.com"`. You can also check for the existence of a + * field; for example, to find domains using custom DNS settings, use an + * expression like `dnsSettings.customDns:*`. + * + * You can also create compound filters by combining expressions with the + * `AND` and `OR` operators. For example, to find domains that are suspended + * or have specific issues flagged, use an expression like + * `(state=SUSPENDED) OR (issue:*)`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of {@link protos.google.cloud.domains.v1.Registration|Registration}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listRegistrationsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listRegistrations( - request?: protos.google.cloud.domains.v1.IListRegistrationsRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1.IRegistration[], - protos.google.cloud.domains.v1.IListRegistrationsRequest|null, - protos.google.cloud.domains.v1.IListRegistrationsResponse - ]>; + request?: protos.google.cloud.domains.v1.IListRegistrationsRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1.IRegistration[], + protos.google.cloud.domains.v1.IListRegistrationsRequest | null, + protos.google.cloud.domains.v1.IListRegistrationsResponse, + ] + >; listRegistrations( - request: protos.google.cloud.domains.v1.IListRegistrationsRequest, - options: CallOptions, - callback: PaginationCallback< - protos.google.cloud.domains.v1.IListRegistrationsRequest, - protos.google.cloud.domains.v1.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1.IRegistration>): void; + request: protos.google.cloud.domains.v1.IListRegistrationsRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.domains.v1.IListRegistrationsRequest, + | protos.google.cloud.domains.v1.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1.IRegistration + >, + ): void; listRegistrations( - request: protos.google.cloud.domains.v1.IListRegistrationsRequest, - callback: PaginationCallback< - protos.google.cloud.domains.v1.IListRegistrationsRequest, - protos.google.cloud.domains.v1.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1.IRegistration>): void; + request: protos.google.cloud.domains.v1.IListRegistrationsRequest, + callback: PaginationCallback< + protos.google.cloud.domains.v1.IListRegistrationsRequest, + | protos.google.cloud.domains.v1.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1.IRegistration + >, + ): void; listRegistrations( - request?: protos.google.cloud.domains.v1.IListRegistrationsRequest, - optionsOrCallback?: CallOptions|PaginationCallback< - protos.google.cloud.domains.v1.IListRegistrationsRequest, - protos.google.cloud.domains.v1.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1.IRegistration>, - callback?: PaginationCallback< + request?: protos.google.cloud.domains.v1.IListRegistrationsRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< protos.google.cloud.domains.v1.IListRegistrationsRequest, - protos.google.cloud.domains.v1.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1.IRegistration>): - Promise<[ - protos.google.cloud.domains.v1.IRegistration[], - protos.google.cloud.domains.v1.IListRegistrationsRequest|null, - protos.google.cloud.domains.v1.IListRegistrationsResponse - ]>|void { + | protos.google.cloud.domains.v1.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1.IRegistration + >, + callback?: PaginationCallback< + protos.google.cloud.domains.v1.IListRegistrationsRequest, + | protos.google.cloud.domains.v1.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1.IRegistration + >, + ): Promise< + [ + protos.google.cloud.domains.v1.IRegistration[], + protos.google.cloud.domains.v1.IListRegistrationsRequest | null, + protos.google.cloud.domains.v1.IListRegistrationsResponse, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: PaginationCallback< - protos.google.cloud.domains.v1.IListRegistrationsRequest, - protos.google.cloud.domains.v1.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1.IRegistration>|undefined = callback + const wrappedCallback: + | PaginationCallback< + protos.google.cloud.domains.v1.IListRegistrationsRequest, + | protos.google.cloud.domains.v1.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1.IRegistration + > + | undefined = callback ? (error, values, nextPageRequest, rawResponse) => { this._log.info('listRegistrations values %j', values); callback!(error, values, nextPageRequest, rawResponse); // We verified callback above. @@ -2121,144 +3036,148 @@ export class DomainsClient { this._log.info('listRegistrations request %j', request); return this.innerApiCalls .listRegistrations(request, options, wrappedCallback) - ?.then(([response, input, output]: [ - protos.google.cloud.domains.v1.IRegistration[], - protos.google.cloud.domains.v1.IListRegistrationsRequest|null, - protos.google.cloud.domains.v1.IListRegistrationsResponse - ]) => { - this._log.info('listRegistrations values %j', response); - return [response, input, output]; - }); + ?.then( + ([response, input, output]: [ + protos.google.cloud.domains.v1.IRegistration[], + protos.google.cloud.domains.v1.IListRegistrationsRequest | null, + protos.google.cloud.domains.v1.IListRegistrationsResponse, + ]) => { + this._log.info('listRegistrations values %j', response); + return [response, input, output]; + }, + ); } -/** - * Equivalent to `listRegistrations`, but returns a NodeJS Stream object. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The project and location from which to list `Registration`s, specified in - * the format `projects/* /locations/*`. - * @param {number} request.pageSize - * Maximum number of results to return. - * @param {string} request.pageToken - * When set to the `next_page_token` from a prior response, provides the next - * page of results. - * @param {string} request.filter - * Filter expression to restrict the `Registration`s returned. - * - * The expression must specify the field name, a comparison operator, and the - * value that you want to use for filtering. The value must be a string, a - * number, a boolean, or an enum value. The comparison operator should be one - * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. - * - * For example, to filter to a specific domain name, use an expression like - * `domainName="example.com"`. You can also check for the existence of a - * field; for example, to find domains using custom DNS settings, use an - * expression like `dnsSettings.customDns:*`. - * - * You can also create compound filters by combining expressions with the - * `AND` and `OR` operators. For example, to find domains that are suspended - * or have specific issues flagged, use an expression like - * `(state=SUSPENDED) OR (issue:*)`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Stream} - * An object stream which emits an object representing {@link protos.google.cloud.domains.v1.Registration|Registration} on 'data' event. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed. Note that it can affect your quota. - * We recommend using `listRegistrationsAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Equivalent to `listRegistrations`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The project and location from which to list `Registration`s, specified in + * the format `projects/* /locations/*`. + * @param {number} request.pageSize + * Maximum number of results to return. + * @param {string} request.pageToken + * When set to the `next_page_token` from a prior response, provides the next + * page of results. + * @param {string} request.filter + * Filter expression to restrict the `Registration`s returned. + * + * The expression must specify the field name, a comparison operator, and the + * value that you want to use for filtering. The value must be a string, a + * number, a boolean, or an enum value. The comparison operator should be one + * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. + * + * For example, to filter to a specific domain name, use an expression like + * `domainName="example.com"`. You can also check for the existence of a + * field; for example, to find domains using custom DNS settings, use an + * expression like `dnsSettings.customDns:*`. + * + * You can also create compound filters by combining expressions with the + * `AND` and `OR` operators. For example, to find domains that are suspended + * or have specific issues flagged, use an expression like + * `(state=SUSPENDED) OR (issue:*)`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing {@link protos.google.cloud.domains.v1.Registration|Registration} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listRegistrationsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listRegistrationsStream( - request?: protos.google.cloud.domains.v1.IListRegistrationsRequest, - options?: CallOptions): - Transform{ + request?: protos.google.cloud.domains.v1.IListRegistrationsRequest, + options?: CallOptions, + ): Transform { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); const defaultCallSettings = this._defaults['listRegistrations']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listRegistrations stream %j', request); return this.descriptors.page.listRegistrations.createStream( this.innerApiCalls.listRegistrations as GaxCall, request, - callSettings + callSettings, ); } -/** - * Equivalent to `listRegistrations`, but returns an iterable object. - * - * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The project and location from which to list `Registration`s, specified in - * the format `projects/* /locations/*`. - * @param {number} request.pageSize - * Maximum number of results to return. - * @param {string} request.pageToken - * When set to the `next_page_token` from a prior response, provides the next - * page of results. - * @param {string} request.filter - * Filter expression to restrict the `Registration`s returned. - * - * The expression must specify the field name, a comparison operator, and the - * value that you want to use for filtering. The value must be a string, a - * number, a boolean, or an enum value. The comparison operator should be one - * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. - * - * For example, to filter to a specific domain name, use an expression like - * `domainName="example.com"`. You can also check for the existence of a - * field; for example, to find domains using custom DNS settings, use an - * expression like `dnsSettings.customDns:*`. - * - * You can also create compound filters by combining expressions with the - * `AND` and `OR` operators. For example, to find domains that are suspended - * or have specific issues flagged, use an expression like - * `(state=SUSPENDED) OR (issue:*)`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Object} - * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. - * When you iterate the returned iterable, each element will be an object representing - * {@link protos.google.cloud.domains.v1.Registration|Registration}. The API will be called under the hood as needed, once per the page, - * so you can stop the iteration when you don't need more results. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - * @example include:samples/generated/v1/domains.list_registrations.js - * region_tag:domains_v1_generated_Domains_ListRegistrations_async - */ + /** + * Equivalent to `listRegistrations`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The project and location from which to list `Registration`s, specified in + * the format `projects/* /locations/*`. + * @param {number} request.pageSize + * Maximum number of results to return. + * @param {string} request.pageToken + * When set to the `next_page_token` from a prior response, provides the next + * page of results. + * @param {string} request.filter + * Filter expression to restrict the `Registration`s returned. + * + * The expression must specify the field name, a comparison operator, and the + * value that you want to use for filtering. The value must be a string, a + * number, a boolean, or an enum value. The comparison operator should be one + * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. + * + * For example, to filter to a specific domain name, use an expression like + * `domainName="example.com"`. You can also check for the existence of a + * field; for example, to find domains using custom DNS settings, use an + * expression like `dnsSettings.customDns:*`. + * + * You can also create compound filters by combining expressions with the + * `AND` and `OR` operators. For example, to find domains that are suspended + * or have specific issues flagged, use an expression like + * `(state=SUSPENDED) OR (issue:*)`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. + * When you iterate the returned iterable, each element will be an object representing + * {@link protos.google.cloud.domains.v1.Registration|Registration}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + * @example include:samples/generated/v1/domains.list_registrations.js + * region_tag:domains_v1_generated_Domains_ListRegistrations_async + */ listRegistrationsAsync( - request?: protos.google.cloud.domains.v1.IListRegistrationsRequest, - options?: CallOptions): - AsyncIterable{ + request?: protos.google.cloud.domains.v1.IListRegistrationsRequest, + options?: CallOptions, + ): AsyncIterable { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); const defaultCallSettings = this._defaults['listRegistrations']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listRegistrations iterate %j', request); return this.descriptors.page.listRegistrations.asyncIterate( this.innerApiCalls['listRegistrations'] as GaxCall, request as {}, - callSettings + callSettings, ) as AsyncIterable; } // -------------------- @@ -2272,7 +3191,7 @@ export class DomainsClient { * @param {string} location * @returns {string} Resource name string. */ - locationPath(project:string,location:string) { + locationPath(project: string, location: string) { return this.pathTemplates.locationPathTemplate.render({ project: project, location: location, @@ -2309,7 +3228,7 @@ export class DomainsClient { * @param {string} registration * @returns {string} Resource name string. */ - registrationPath(project:string,location:string,registration:string) { + registrationPath(project: string, location: string, registration: string) { return this.pathTemplates.registrationPathTemplate.render({ project: project, location: location, @@ -2325,7 +3244,8 @@ export class DomainsClient { * @returns {string} A string representing the project. */ matchProjectFromRegistrationName(registrationName: string) { - return this.pathTemplates.registrationPathTemplate.match(registrationName).project; + return this.pathTemplates.registrationPathTemplate.match(registrationName) + .project; } /** @@ -2336,7 +3256,8 @@ export class DomainsClient { * @returns {string} A string representing the location. */ matchLocationFromRegistrationName(registrationName: string) { - return this.pathTemplates.registrationPathTemplate.match(registrationName).location; + return this.pathTemplates.registrationPathTemplate.match(registrationName) + .location; } /** @@ -2347,7 +3268,8 @@ export class DomainsClient { * @returns {string} A string representing the registration. */ matchRegistrationFromRegistrationName(registrationName: string) { - return this.pathTemplates.registrationPathTemplate.match(registrationName).registration; + return this.pathTemplates.registrationPathTemplate.match(registrationName) + .registration; } /** @@ -2358,7 +3280,7 @@ export class DomainsClient { */ close(): Promise { if (this.domainsStub && !this._terminated) { - return this.domainsStub.then(stub => { + return this.domainsStub.then((stub) => { this._log.info('ending gRPC channel'); this._terminated = true; stub.close(); @@ -2367,4 +3289,4 @@ export class DomainsClient { } return Promise.resolve(); } -} \ No newline at end of file +} diff --git a/packages/google-cloud-domains/src/v1/index.ts b/packages/google-cloud-domains/src/v1/index.ts index fa4156724d39..2a910d56857f 100644 --- a/packages/google-cloud-domains/src/v1/index.ts +++ b/packages/google-cloud-domains/src/v1/index.ts @@ -16,4 +16,4 @@ // ** https://github.com/googleapis/gapic-generator-typescript ** // ** All changes to this file may be overwritten. ** -export {DomainsClient} from './domains_client'; +export { DomainsClient } from './domains_client'; diff --git a/packages/google-cloud-domains/src/v1alpha2/domains_client.ts b/packages/google-cloud-domains/src/v1alpha2/domains_client.ts index d180f924fe72..d6c0e5d83c06 100644 --- a/packages/google-cloud-domains/src/v1alpha2/domains_client.ts +++ b/packages/google-cloud-domains/src/v1alpha2/domains_client.ts @@ -18,11 +18,20 @@ /* global window */ import type * as gax from 'google-gax'; -import type {Callback, CallOptions, Descriptors, ClientOptions, GrpcClientOptions, LROperation, PaginationCallback, GaxCall} from 'google-gax'; -import {Transform} from 'stream'; +import type { + Callback, + CallOptions, + Descriptors, + ClientOptions, + GrpcClientOptions, + LROperation, + PaginationCallback, + GaxCall, +} from 'google-gax'; +import { Transform } from 'stream'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); -import {loggingUtils as logging, decodeAnyProtosInArray} from 'google-gax'; +import { loggingUtils as logging, decodeAnyProtosInArray } from 'google-gax'; /** * Client JSON configuration object, loaded from @@ -44,7 +53,7 @@ export class DomainsClient { private _gaxModule: typeof gax | typeof gax.fallback; private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; private _protos: {}; - private _defaults: {[method: string]: gax.CallSettings}; + private _defaults: { [method: string]: gax.CallSettings }; private _universeDomain: string; private _servicePath: string; private _log = logging.log('domains'); @@ -57,10 +66,10 @@ export class DomainsClient { batching: {}, }; warn: (code: string, message: string, warnType?: string) => void; - innerApiCalls: {[name: string]: Function}; - pathTemplates: {[name: string]: gax.PathTemplate}; + innerApiCalls: { [name: string]: Function }; + pathTemplates: { [name: string]: gax.PathTemplate }; operationsClient: gax.OperationsClient; - domainsStub?: Promise<{[name: string]: Function}>; + domainsStub?: Promise<{ [name: string]: Function }>; /** * Construct an instance of DomainsClient. @@ -101,21 +110,42 @@ export class DomainsClient { * const client = new DomainsClient({fallback: true}, gax); * ``` */ - constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback) { + constructor( + opts?: ClientOptions, + gaxInstance?: typeof gax | typeof gax.fallback, + ) { // Ensure that options include all the required fields. const staticMembers = this.constructor as typeof DomainsClient; - if (opts?.universe_domain && opts?.universeDomain && opts?.universe_domain !== opts?.universeDomain) { - throw new Error('Please set either universe_domain or universeDomain, but not both.'); + if ( + opts?.universe_domain && + opts?.universeDomain && + opts?.universe_domain !== opts?.universeDomain + ) { + throw new Error( + 'Please set either universe_domain or universeDomain, but not both.', + ); } - const universeDomainEnvVar = (typeof process === 'object' && typeof process.env === 'object') ? process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] : undefined; - this._universeDomain = opts?.universeDomain ?? opts?.universe_domain ?? universeDomainEnvVar ?? 'googleapis.com'; + const universeDomainEnvVar = + typeof process === 'object' && typeof process.env === 'object' + ? process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] + : undefined; + this._universeDomain = + opts?.universeDomain ?? + opts?.universe_domain ?? + universeDomainEnvVar ?? + 'googleapis.com'; this._servicePath = 'domains.' + this._universeDomain; - const servicePath = opts?.servicePath || opts?.apiEndpoint || this._servicePath; - this._providedCustomServicePath = !!(opts?.servicePath || opts?.apiEndpoint); + const servicePath = + opts?.servicePath || opts?.apiEndpoint || this._servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); const port = opts?.port || staticMembers.port; const clientConfig = opts?.clientConfig ?? {}; - const fallback = opts?.fallback ?? (typeof window !== 'undefined' && typeof window?.fetch === 'function'); - opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({ servicePath, port, clientConfig, fallback }, opts); // Request numeric enum values if REST transport is used. opts.numericEnums = true; @@ -140,7 +170,7 @@ export class DomainsClient { this._opts = opts; // Save the auth object to the client, for use by other methods. - this.auth = (this._gaxGrpc.auth as gax.GoogleAuth); + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; // Set useJWTAccessWithScope on the auth object. this.auth.useJWTAccessWithScope = true; @@ -154,10 +184,7 @@ export class DomainsClient { } // Determine the client header string. - const clientHeader = [ - `gax/${this._gaxModule.version}`, - `gapic/${version}`, - ]; + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; if (typeof process === 'object' && 'versions' in process) { clientHeader.push(`gl-node/${process.versions.node}`); } else { @@ -179,10 +206,10 @@ export class DomainsClient { // Create useful helper objects for these. this.pathTemplates = { locationPathTemplate: new this._gaxModule.PathTemplate( - 'projects/{project}/locations/{location}' + 'projects/{project}/locations/{location}', ), registrationPathTemplate: new this._gaxModule.PathTemplate( - 'projects/{project}/locations/{location}/registrations/{registration}' + 'projects/{project}/locations/{location}/registrations/{registration}', ), }; @@ -190,8 +217,11 @@ export class DomainsClient { // (e.g. 50 results at a time, with tokens to get subsequent // pages). Denote the keys used for pagination and results. this.descriptors.page = { - listRegistrations: - new this._gaxModule.PageDescriptor('pageToken', 'nextPageToken', 'registrations') + listRegistrations: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'registrations', + ), }; const protoFilesRoot = this._gaxModule.protobufFromJSON(jsonProtos); @@ -200,85 +230,153 @@ export class DomainsClient { // rather than holding a request open. const lroOptions: GrpcClientOptions = { auth: this.auth, - grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, }; if (opts.fallback) { lroOptions.protoJson = protoFilesRoot; - lroOptions.httpRules = [{selector: 'google.cloud.location.Locations.GetLocation',get: '/v1alpha2/{name=projects/*/locations/*}',},{selector: 'google.cloud.location.Locations.ListLocations',get: '/v1alpha2/{name=projects/*}/locations',},{selector: 'google.iam.v1.IAMPolicy.GetIamPolicy',get: '/v1alpha2/{resource=projects/*/locations/*/registrations/*}:getIamPolicy',},{selector: 'google.iam.v1.IAMPolicy.SetIamPolicy',post: '/v1alpha2/{resource=projects/*/locations/*/registrations/*}:setIamPolicy',body: '*',},{selector: 'google.iam.v1.IAMPolicy.TestIamPermissions',post: '/v1alpha2/{resource=projects/*/locations/*/registrations/*}:testIamPermissions',body: '*',},{selector: 'google.longrunning.Operations.GetOperation',get: '/v1alpha2/{name=projects/*/locations/*/operations/*}',},{selector: 'google.longrunning.Operations.ListOperations',get: '/v1alpha2/{name=projects/*/locations/*}/operations',}]; + lroOptions.httpRules = [ + { + selector: 'google.cloud.location.Locations.GetLocation', + get: '/v1alpha2/{name=projects/*/locations/*}', + }, + { + selector: 'google.cloud.location.Locations.ListLocations', + get: '/v1alpha2/{name=projects/*}/locations', + }, + { + selector: 'google.iam.v1.IAMPolicy.GetIamPolicy', + get: '/v1alpha2/{resource=projects/*/locations/*/registrations/*}:getIamPolicy', + }, + { + selector: 'google.iam.v1.IAMPolicy.SetIamPolicy', + post: '/v1alpha2/{resource=projects/*/locations/*/registrations/*}:setIamPolicy', + body: '*', + }, + { + selector: 'google.iam.v1.IAMPolicy.TestIamPermissions', + post: '/v1alpha2/{resource=projects/*/locations/*/registrations/*}:testIamPermissions', + body: '*', + }, + { + selector: 'google.longrunning.Operations.GetOperation', + get: '/v1alpha2/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.ListOperations', + get: '/v1alpha2/{name=projects/*/locations/*}/operations', + }, + ]; } - this.operationsClient = this._gaxModule.lro(lroOptions).operationsClient(opts); + this.operationsClient = this._gaxModule + .lro(lroOptions) + .operationsClient(opts); const registerDomainResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.Registration', + ) as gax.protobuf.Type; const registerDomainMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.OperationMetadata', + ) as gax.protobuf.Type; const transferDomainResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.Registration', + ) as gax.protobuf.Type; const transferDomainMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.OperationMetadata', + ) as gax.protobuf.Type; const updateRegistrationResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.Registration', + ) as gax.protobuf.Type; const updateRegistrationMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.OperationMetadata', + ) as gax.protobuf.Type; const configureManagementSettingsResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.Registration', + ) as gax.protobuf.Type; const configureManagementSettingsMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.OperationMetadata', + ) as gax.protobuf.Type; const configureDnsSettingsResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.Registration', + ) as gax.protobuf.Type; const configureDnsSettingsMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.OperationMetadata', + ) as gax.protobuf.Type; const configureContactSettingsResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.Registration', + ) as gax.protobuf.Type; const configureContactSettingsMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.OperationMetadata', + ) as gax.protobuf.Type; const exportRegistrationResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.Registration', + ) as gax.protobuf.Type; const exportRegistrationMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.OperationMetadata', + ) as gax.protobuf.Type; const deleteRegistrationResponse = protoFilesRoot.lookup( - '.google.protobuf.Empty') as gax.protobuf.Type; + '.google.protobuf.Empty', + ) as gax.protobuf.Type; const deleteRegistrationMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1alpha2.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1alpha2.OperationMetadata', + ) as gax.protobuf.Type; this.descriptors.longrunning = { registerDomain: new this._gaxModule.LongrunningDescriptor( this.operationsClient, registerDomainResponse.decode.bind(registerDomainResponse), - registerDomainMetadata.decode.bind(registerDomainMetadata)), + registerDomainMetadata.decode.bind(registerDomainMetadata), + ), transferDomain: new this._gaxModule.LongrunningDescriptor( this.operationsClient, transferDomainResponse.decode.bind(transferDomainResponse), - transferDomainMetadata.decode.bind(transferDomainMetadata)), + transferDomainMetadata.decode.bind(transferDomainMetadata), + ), updateRegistration: new this._gaxModule.LongrunningDescriptor( this.operationsClient, updateRegistrationResponse.decode.bind(updateRegistrationResponse), - updateRegistrationMetadata.decode.bind(updateRegistrationMetadata)), + updateRegistrationMetadata.decode.bind(updateRegistrationMetadata), + ), configureManagementSettings: new this._gaxModule.LongrunningDescriptor( this.operationsClient, - configureManagementSettingsResponse.decode.bind(configureManagementSettingsResponse), - configureManagementSettingsMetadata.decode.bind(configureManagementSettingsMetadata)), + configureManagementSettingsResponse.decode.bind( + configureManagementSettingsResponse, + ), + configureManagementSettingsMetadata.decode.bind( + configureManagementSettingsMetadata, + ), + ), configureDnsSettings: new this._gaxModule.LongrunningDescriptor( this.operationsClient, configureDnsSettingsResponse.decode.bind(configureDnsSettingsResponse), - configureDnsSettingsMetadata.decode.bind(configureDnsSettingsMetadata)), + configureDnsSettingsMetadata.decode.bind(configureDnsSettingsMetadata), + ), configureContactSettings: new this._gaxModule.LongrunningDescriptor( this.operationsClient, - configureContactSettingsResponse.decode.bind(configureContactSettingsResponse), - configureContactSettingsMetadata.decode.bind(configureContactSettingsMetadata)), + configureContactSettingsResponse.decode.bind( + configureContactSettingsResponse, + ), + configureContactSettingsMetadata.decode.bind( + configureContactSettingsMetadata, + ), + ), exportRegistration: new this._gaxModule.LongrunningDescriptor( this.operationsClient, exportRegistrationResponse.decode.bind(exportRegistrationResponse), - exportRegistrationMetadata.decode.bind(exportRegistrationMetadata)), + exportRegistrationMetadata.decode.bind(exportRegistrationMetadata), + ), deleteRegistration: new this._gaxModule.LongrunningDescriptor( this.operationsClient, deleteRegistrationResponse.decode.bind(deleteRegistrationResponse), - deleteRegistrationMetadata.decode.bind(deleteRegistrationMetadata)) + deleteRegistrationMetadata.decode.bind(deleteRegistrationMetadata), + ), }; // Put together the default options sent with requests. this._defaults = this._gaxGrpc.constructSettings( - 'google.cloud.domains.v1alpha2.Domains', gapicConfig as gax.ClientConfig, - opts.clientConfig || {}, {'x-goog-api-client': clientHeader.join(' ')}); + 'google.cloud.domains.v1alpha2.Domains', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + { 'x-goog-api-client': clientHeader.join(' ') }, + ); // Set up a dictionary of "inner API calls"; the core implementation // of calling the API is handled in `google-gax`, with this code @@ -309,28 +407,49 @@ export class DomainsClient { // Put together the "service stub" for // google.cloud.domains.v1alpha2.Domains. this.domainsStub = this._gaxGrpc.createStub( - this._opts.fallback ? - (this._protos as protobuf.Root).lookupService('google.cloud.domains.v1alpha2.Domains') : - // eslint-disable-next-line @typescript-eslint/no-explicit-any + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService( + 'google.cloud.domains.v1alpha2.Domains', + ) + : // eslint-disable-next-line @typescript-eslint/no-explicit-any (this._protos as any).google.cloud.domains.v1alpha2.Domains, - this._opts, this._providedCustomServicePath) as Promise<{[method: string]: Function}>; + this._opts, + this._providedCustomServicePath, + ) as Promise<{ [method: string]: Function }>; // Iterate over each of the methods that the service provides // and create an API call method for each. - const domainsStubMethods = - ['searchDomains', 'retrieveRegisterParameters', 'registerDomain', 'retrieveTransferParameters', 'transferDomain', 'listRegistrations', 'getRegistration', 'updateRegistration', 'configureManagementSettings', 'configureDnsSettings', 'configureContactSettings', 'exportRegistration', 'deleteRegistration', 'retrieveAuthorizationCode', 'resetAuthorizationCode']; + const domainsStubMethods = [ + 'searchDomains', + 'retrieveRegisterParameters', + 'registerDomain', + 'retrieveTransferParameters', + 'transferDomain', + 'listRegistrations', + 'getRegistration', + 'updateRegistration', + 'configureManagementSettings', + 'configureDnsSettings', + 'configureContactSettings', + 'exportRegistration', + 'deleteRegistration', + 'retrieveAuthorizationCode', + 'resetAuthorizationCode', + ]; for (const methodName of domainsStubMethods) { const callPromise = this.domainsStub.then( - stub => (...args: Array<{}>) => { - if (this._terminated) { - return Promise.reject('The client has already been closed.'); - } - const func = stub[methodName]; - return func.apply(stub, args); - }, - (err: Error|null|undefined) => () => { + (stub) => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { throw err; - }); + }, + ); const descriptor = this.descriptors.page[methodName] || @@ -340,7 +459,7 @@ export class DomainsClient { callPromise, this._defaults[methodName], descriptor, - this._opts.fallback + this._opts.fallback, ); this.innerApiCalls[methodName] = apiCall; @@ -355,8 +474,14 @@ export class DomainsClient { * @returns {string} The DNS address for this service. */ static get servicePath() { - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - process.emitWarning('Static servicePath is deprecated, please use the instance method instead.', 'DeprecationWarning'); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + process.emitWarning( + 'Static servicePath is deprecated, please use the instance method instead.', + 'DeprecationWarning', + ); } return 'domains.googleapis.com'; } @@ -367,8 +492,14 @@ export class DomainsClient { * @returns {string} The DNS address for this service. */ static get apiEndpoint() { - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - process.emitWarning('Static apiEndpoint is deprecated, please use the instance method instead.', 'DeprecationWarning'); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + process.emitWarning( + 'Static apiEndpoint is deprecated, please use the instance method instead.', + 'DeprecationWarning', + ); } return 'domains.googleapis.com'; } @@ -399,9 +530,7 @@ export class DomainsClient { * @returns {string[]} List of default scopes. */ static get scopes() { - return [ - 'https://www.googleapis.com/auth/cloud-platform' - ]; + return ['https://www.googleapis.com/auth/cloud-platform']; } getProjectId(): Promise; @@ -410,8 +539,9 @@ export class DomainsClient { * Return the project ID used by this class. * @returns {Promise} A promise that resolves to string containing the project ID. */ - getProjectId(callback?: Callback): - Promise|void { + getProjectId( + callback?: Callback, + ): Promise | void { if (callback) { this.auth.getProjectId(callback); return; @@ -422,1697 +552,2506 @@ export class DomainsClient { // ------------------- // -- Service calls -- // ------------------- -/** - * Searches for available domain names similar to the provided query. - * - * Availability results from this method are approximate; call - * `RetrieveRegisterParameters` on a domain before registering to confirm - * availability. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.query - * Required. String used to search for available domain names. - * @param {string} request.location - * Required. The location. Must be in the format `projects/* /locations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.SearchDomainsResponse|SearchDomainsResponse}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.search_domains.js - * region_tag:domains_v1alpha2_generated_Domains_SearchDomains_async - */ + /** + * Searches for available domain names similar to the provided query. + * + * Availability results from this method are approximate; call + * `RetrieveRegisterParameters` on a domain before registering to confirm + * availability. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.query + * Required. String used to search for available domain names. + * @param {string} request.location + * Required. The location. Must be in the format `projects/* /locations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.SearchDomainsResponse|SearchDomainsResponse}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.search_domains.js + * region_tag:domains_v1alpha2_generated_Domains_SearchDomains_async + */ searchDomains( - request?: protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, - protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, + protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest | undefined, + {} | undefined, + ] + >; searchDomains( - request: protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, - protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, + | protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + >, + ): void; searchDomains( - request: protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest, - callback: Callback< - protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, - protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest, + callback: Callback< + protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, + | protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + >, + ): void; searchDomains( - request?: protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest, - optionsOrCallback?: CallOptions|Callback< - protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, - protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, - protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, - protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, + | protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, + protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'location': request.location ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + location: request.location ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('searchDomains request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, - protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, + | protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('searchDomains response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.searchDomains(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, - protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest|undefined, - {}|undefined - ]) => { - this._log.info('searchDomains response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .searchDomains(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse, + ( + | protos.google.cloud.domains.v1alpha2.ISearchDomainsRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('searchDomains response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets parameters needed to register a new domain name, including price and - * up-to-date availability. Use the returned values to call `RegisterDomain`. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.domainName - * Required. The domain name. Unicode domain names must be expressed in Punycode format. - * @param {string} request.location - * Required. The location. Must be in the format `projects/* /locations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersResponse|RetrieveRegisterParametersResponse}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.retrieve_register_parameters.js - * region_tag:domains_v1alpha2_generated_Domains_RetrieveRegisterParameters_async - */ + /** + * Gets parameters needed to register a new domain name, including price and + * up-to-date availability. Use the returned values to call `RegisterDomain`. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.domainName + * Required. The domain name. Unicode domain names must be expressed in Punycode format. + * @param {string} request.location + * Required. The location. Must be in the format `projects/* /locations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersResponse|RetrieveRegisterParametersResponse}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.retrieve_register_parameters.js + * region_tag:domains_v1alpha2_generated_Domains_RetrieveRegisterParameters_async + */ retrieveRegisterParameters( - request?: protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, + ( + | protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest + | undefined + ), + {} | undefined, + ] + >; retrieveRegisterParameters( - request: protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveRegisterParameters( - request: protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest, - callback: Callback< - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest, + callback: Callback< + protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveRegisterParameters( - request?: protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest, - optionsOrCallback?: CallOptions|Callback< - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, + ( + | protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest + | undefined + ), + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'location': request.location ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + location: request.location ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('retrieveRegisterParameters request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('retrieveRegisterParameters response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.retrieveRegisterParameters(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest|undefined, - {}|undefined - ]) => { - this._log.info('retrieveRegisterParameters response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .retrieveRegisterParameters(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse, + ( + | protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('retrieveRegisterParameters response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets parameters needed to transfer a domain name from another registrar to - * Cloud Domains. For domains managed by Google Domains, transferring to Cloud - * Domains is not supported. - * - * - * Use the returned values to call `TransferDomain`. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.domainName - * Required. The domain name. Unicode domain names must be expressed in Punycode format. - * @param {string} request.location - * Required. The location. Must be in the format `projects/* /locations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersResponse|RetrieveTransferParametersResponse}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.retrieve_transfer_parameters.js - * region_tag:domains_v1alpha2_generated_Domains_RetrieveTransferParameters_async - */ + /** + * Gets parameters needed to transfer a domain name from another registrar to + * Cloud Domains. For domains managed by Google Domains, transferring to Cloud + * Domains is not supported. + * + * + * Use the returned values to call `TransferDomain`. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.domainName + * Required. The domain name. Unicode domain names must be expressed in Punycode format. + * @param {string} request.location + * Required. The location. Must be in the format `projects/* /locations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersResponse|RetrieveTransferParametersResponse}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.retrieve_transfer_parameters.js + * region_tag:domains_v1alpha2_generated_Domains_RetrieveTransferParameters_async + */ retrieveTransferParameters( - request?: protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, + ( + | protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest + | undefined + ), + {} | undefined, + ] + >; retrieveTransferParameters( - request: protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveTransferParameters( - request: protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest, - callback: Callback< - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest, + callback: Callback< + protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveTransferParameters( - request?: protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, + ( + | protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest + | undefined + ), + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'location': request.location ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + location: request.location ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('retrieveTransferParameters request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('retrieveTransferParameters response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.retrieveTransferParameters(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest|undefined, - {}|undefined - ]) => { - this._log.info('retrieveTransferParameters response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .retrieveTransferParameters(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse, + ( + | protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('retrieveTransferParameters response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets the details of a `Registration` resource. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The name of the `Registration` to get, in the format - * `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.Registration|Registration}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.get_registration.js - * region_tag:domains_v1alpha2_generated_Domains_GetRegistration_async - */ + /** + * Gets the details of a `Registration` resource. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The name of the `Registration` to get, in the format + * `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.Registration|Registration}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.get_registration.js + * region_tag:domains_v1alpha2_generated_Domains_GetRegistration_async + */ getRegistration( - request?: protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1alpha2.IRegistration, - protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest | undefined, + {} | undefined, + ] + >; getRegistration( - request: protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1alpha2.IRegistration, - protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1alpha2.IRegistration, + | protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + >, + ): void; getRegistration( - request: protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest, - callback: Callback< - protos.google.cloud.domains.v1alpha2.IRegistration, - protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest, + callback: Callback< + protos.google.cloud.domains.v1alpha2.IRegistration, + | protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + >, + ): void; getRegistration( - request?: protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1alpha2.IRegistration, - protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.google.cloud.domains.v1alpha2.IRegistration, - protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1alpha2.IRegistration, - protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1alpha2.IRegistration, + | protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('getRegistration request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1alpha2.IRegistration, - protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1alpha2.IRegistration, + | protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('getRegistration response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.getRegistration(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1alpha2.IRegistration, - protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest|undefined, - {}|undefined - ]) => { - this._log.info('getRegistration response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .getRegistration(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1alpha2.IRegistration, + ( + | protos.google.cloud.domains.v1alpha2.IGetRegistrationRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('getRegistration response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets the authorization code of the `Registration` for the purpose of - * transferring the domain to another registrar. - * - * You can call this method only after 60 days have elapsed since the initial - * domain registration. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose authorization code is being retrieved, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.AuthorizationCode|AuthorizationCode}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.retrieve_authorization_code.js - * region_tag:domains_v1alpha2_generated_Domains_RetrieveAuthorizationCode_async - */ + /** + * Gets the authorization code of the `Registration` for the purpose of + * transferring the domain to another registrar. + * + * You can call this method only after 60 days have elapsed since the initial + * domain registration. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose authorization code is being retrieved, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.AuthorizationCode|AuthorizationCode}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.retrieve_authorization_code.js + * region_tag:domains_v1alpha2_generated_Domains_RetrieveAuthorizationCode_async + */ retrieveAuthorizationCode( - request?: protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ] + >; retrieveAuthorizationCode( - request: protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + | protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveAuthorizationCode( - request: protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest, - callback: Callback< - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest, + callback: Callback< + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + | protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveAuthorizationCode( - request?: protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + | protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('retrieveAuthorizationCode request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + | protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('retrieveAuthorizationCode response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.retrieveAuthorizationCode(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest|undefined, - {}|undefined - ]) => { - this._log.info('retrieveAuthorizationCode response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .retrieveAuthorizationCode(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1alpha2.IRetrieveAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('retrieveAuthorizationCode response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Resets the authorization code of the `Registration` to a new random string. - * - * You can call this method only after 60 days have elapsed since the initial - * domain registration. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose authorization code is being reset, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.AuthorizationCode|AuthorizationCode}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.reset_authorization_code.js - * region_tag:domains_v1alpha2_generated_Domains_ResetAuthorizationCode_async - */ + /** + * Resets the authorization code of the `Registration` to a new random string. + * + * You can call this method only after 60 days have elapsed since the initial + * domain registration. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose authorization code is being reset, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1alpha2.AuthorizationCode|AuthorizationCode}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.reset_authorization_code.js + * region_tag:domains_v1alpha2_generated_Domains_ResetAuthorizationCode_async + */ resetAuthorizationCode( - request?: protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ] + >; resetAuthorizationCode( - request: protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + | protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; resetAuthorizationCode( - request: protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest, - callback: Callback< - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest, + callback: Callback< + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + | protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; resetAuthorizationCode( - request?: protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest, - optionsOrCallback?: CallOptions|Callback< - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + | protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('resetAuthorizationCode request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + | protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('resetAuthorizationCode response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.resetAuthorizationCode(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1alpha2.IAuthorizationCode, - protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest|undefined, - {}|undefined - ]) => { - this._log.info('resetAuthorizationCode response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .resetAuthorizationCode(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1alpha2.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1alpha2.IResetAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('resetAuthorizationCode response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Registers a new domain name and creates a corresponding `Registration` - * resource. - * - * Call `RetrieveRegisterParameters` first to check availability of the domain - * name and determine parameters like price that are needed to build a call to - * this method. - * - * A successful call creates a `Registration` resource in state - * `REGISTRATION_PENDING`, which resolves to `ACTIVE` within 1-2 - * minutes, indicating that the domain was successfully registered. If the - * resource ends up in state `REGISTRATION_FAILED`, it indicates that the - * domain was not registered successfully, and you can safely delete the - * resource and retry registration. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The parent resource of the `Registration`. Must be in the - * format `projects/* /locations/*`. - * @param {google.cloud.domains.v1alpha2.Registration} request.registration - * Required. The complete `Registration` resource to be created. - * @param {number[]} request.domainNotices - * The list of domain notices that you acknowledge. Call - * `RetrieveRegisterParameters` to see the notices that need acknowledgement. - * @param {number[]} request.contactNotices - * The list of contact notices that the caller acknowledges. The notices - * needed here depend on the values specified in - * `registration.contact_settings`. - * @param {google.type.Money} request.yearlyPrice - * Required. Yearly price to register or renew the domain. - * The value that should be put here can be obtained from - * RetrieveRegisterParameters or SearchDomains calls. - * @param {boolean} request.validateOnly - * When true, only validation is performed, without actually registering - * the domain. Follows: - * https://cloud.google.com/apis/design/design_patterns#request_validation - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.register_domain.js - * region_tag:domains_v1alpha2_generated_Domains_RegisterDomain_async - */ + /** + * Registers a new domain name and creates a corresponding `Registration` + * resource. + * + * Call `RetrieveRegisterParameters` first to check availability of the domain + * name and determine parameters like price that are needed to build a call to + * this method. + * + * A successful call creates a `Registration` resource in state + * `REGISTRATION_PENDING`, which resolves to `ACTIVE` within 1-2 + * minutes, indicating that the domain was successfully registered. If the + * resource ends up in state `REGISTRATION_FAILED`, it indicates that the + * domain was not registered successfully, and you can safely delete the + * resource and retry registration. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent resource of the `Registration`. Must be in the + * format `projects/* /locations/*`. + * @param {google.cloud.domains.v1alpha2.Registration} request.registration + * Required. The complete `Registration` resource to be created. + * @param {number[]} request.domainNotices + * The list of domain notices that you acknowledge. Call + * `RetrieveRegisterParameters` to see the notices that need acknowledgement. + * @param {number[]} request.contactNotices + * The list of contact notices that the caller acknowledges. The notices + * needed here depend on the values specified in + * `registration.contact_settings`. + * @param {google.type.Money} request.yearlyPrice + * Required. Yearly price to register or renew the domain. + * The value that should be put here can be obtained from + * RetrieveRegisterParameters or SearchDomains calls. + * @param {boolean} request.validateOnly + * When true, only validation is performed, without actually registering + * the domain. Follows: + * https://cloud.google.com/apis/design/design_patterns#request_validation + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.register_domain.js + * region_tag:domains_v1alpha2_generated_Domains_RegisterDomain_async + */ registerDomain( - request?: protos.google.cloud.domains.v1alpha2.IRegisterDomainRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IRegisterDomainRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; registerDomain( - request: protos.google.cloud.domains.v1alpha2.IRegisterDomainRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IRegisterDomainRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; registerDomain( - request: protos.google.cloud.domains.v1alpha2.IRegisterDomainRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IRegisterDomainRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; registerDomain( - request?: protos.google.cloud.domains.v1alpha2.IRegisterDomainRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1alpha2.IRegisterDomainRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('registerDomain response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('registerDomain request %j', request); - return this.innerApiCalls.registerDomain(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('registerDomain response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .registerDomain(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('registerDomain response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `registerDomain()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.register_domain.js - * region_tag:domains_v1alpha2_generated_Domains_RegisterDomain_async - */ - async checkRegisterDomainProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `registerDomain()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.register_domain.js + * region_tag:domains_v1alpha2_generated_Domains_RegisterDomain_async + */ + async checkRegisterDomainProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + > + > { this._log.info('registerDomain long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.registerDomain, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.registerDomain, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + >; } -/** - * Transfers a domain name from another registrar to Cloud Domains. For - * domains managed by Google Domains, transferring to Cloud Domains is not - * supported. - * - * - * Before calling this method, go to the domain's current registrar to unlock - * the domain for transfer and retrieve the domain's transfer authorization - * code. Then call `RetrieveTransferParameters` to confirm that the domain is - * unlocked and to get values needed to build a call to this method. - * - * A successful call creates a `Registration` resource in state - * `TRANSFER_PENDING`. It can take several days to complete the transfer - * process. The registrant can often speed up this process by approving the - * transfer through the current registrar, either by clicking a link in an - * email from the registrar or by visiting the registrar's website. - * - * A few minutes after transfer approval, the resource transitions to state - * `ACTIVE`, indicating that the transfer was successful. If the transfer is - * rejected or the request expires without being approved, the resource can - * end up in state `TRANSFER_FAILED`. If transfer fails, you can safely delete - * the resource and retry the transfer. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The parent resource of the `Registration`. Must be in the - * format `projects/* /locations/*`. - * @param {google.cloud.domains.v1alpha2.Registration} request.registration - * Required. The complete `Registration` resource to be created. - * - * You can leave `registration.dns_settings` unset to import the - * domain's current DNS configuration from its current registrar. Use this - * option only if you are sure that the domain's current DNS service - * does not cease upon transfer, as is often the case for DNS services - * provided for free by the registrar. - * @param {number[]} request.contactNotices - * The list of contact notices that you acknowledge. The notices - * needed here depend on the values specified in - * `registration.contact_settings`. - * @param {google.type.Money} request.yearlyPrice - * Required. Acknowledgement of the price to transfer or renew the domain for one year. - * Call `RetrieveTransferParameters` to obtain the price, which you must - * acknowledge. - * @param {google.cloud.domains.v1alpha2.AuthorizationCode} request.authorizationCode - * The domain's transfer authorization code. You can obtain this from the - * domain's current registrar. - * @param {boolean} request.validateOnly - * Validate the request without actually transferring the domain. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.transfer_domain.js - * region_tag:domains_v1alpha2_generated_Domains_TransferDomain_async - */ + /** + * Transfers a domain name from another registrar to Cloud Domains. For + * domains managed by Google Domains, transferring to Cloud Domains is not + * supported. + * + * + * Before calling this method, go to the domain's current registrar to unlock + * the domain for transfer and retrieve the domain's transfer authorization + * code. Then call `RetrieveTransferParameters` to confirm that the domain is + * unlocked and to get values needed to build a call to this method. + * + * A successful call creates a `Registration` resource in state + * `TRANSFER_PENDING`. It can take several days to complete the transfer + * process. The registrant can often speed up this process by approving the + * transfer through the current registrar, either by clicking a link in an + * email from the registrar or by visiting the registrar's website. + * + * A few minutes after transfer approval, the resource transitions to state + * `ACTIVE`, indicating that the transfer was successful. If the transfer is + * rejected or the request expires without being approved, the resource can + * end up in state `TRANSFER_FAILED`. If transfer fails, you can safely delete + * the resource and retry the transfer. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent resource of the `Registration`. Must be in the + * format `projects/* /locations/*`. + * @param {google.cloud.domains.v1alpha2.Registration} request.registration + * Required. The complete `Registration` resource to be created. + * + * You can leave `registration.dns_settings` unset to import the + * domain's current DNS configuration from its current registrar. Use this + * option only if you are sure that the domain's current DNS service + * does not cease upon transfer, as is often the case for DNS services + * provided for free by the registrar. + * @param {number[]} request.contactNotices + * The list of contact notices that you acknowledge. The notices + * needed here depend on the values specified in + * `registration.contact_settings`. + * @param {google.type.Money} request.yearlyPrice + * Required. Acknowledgement of the price to transfer or renew the domain for one year. + * Call `RetrieveTransferParameters` to obtain the price, which you must + * acknowledge. + * @param {google.cloud.domains.v1alpha2.AuthorizationCode} request.authorizationCode + * The domain's transfer authorization code. You can obtain this from the + * domain's current registrar. + * @param {boolean} request.validateOnly + * Validate the request without actually transferring the domain. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.transfer_domain.js + * region_tag:domains_v1alpha2_generated_Domains_TransferDomain_async + */ transferDomain( - request?: protos.google.cloud.domains.v1alpha2.ITransferDomainRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.ITransferDomainRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; transferDomain( - request: protos.google.cloud.domains.v1alpha2.ITransferDomainRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.ITransferDomainRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; transferDomain( - request: protos.google.cloud.domains.v1alpha2.ITransferDomainRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.ITransferDomainRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; transferDomain( - request?: protos.google.cloud.domains.v1alpha2.ITransferDomainRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1alpha2.ITransferDomainRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('transferDomain response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('transferDomain request %j', request); - return this.innerApiCalls.transferDomain(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('transferDomain response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .transferDomain(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('transferDomain response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `transferDomain()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.transfer_domain.js - * region_tag:domains_v1alpha2_generated_Domains_TransferDomain_async - */ - async checkTransferDomainProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `transferDomain()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.transfer_domain.js + * region_tag:domains_v1alpha2_generated_Domains_TransferDomain_async + */ + async checkTransferDomainProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + > + > { this._log.info('transferDomain long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.transferDomain, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.transferDomain, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + >; } -/** - * Updates select fields of a `Registration` resource, notably `labels`. To - * update other fields, use the appropriate custom update method: - * - * * To update management settings, see `ConfigureManagementSettings` - * * To update DNS configuration, see `ConfigureDnsSettings` - * * To update contact information, see `ConfigureContactSettings` - * - * @param {Object} request - * The request object that will be sent. - * @param {google.cloud.domains.v1alpha2.Registration} request.registration - * Fields of the `Registration` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the labels are being updated, the `update_mask` is - * `"labels"`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.update_registration.js - * region_tag:domains_v1alpha2_generated_Domains_UpdateRegistration_async - */ + /** + * Updates select fields of a `Registration` resource, notably `labels`. To + * update other fields, use the appropriate custom update method: + * + * * To update management settings, see `ConfigureManagementSettings` + * * To update DNS configuration, see `ConfigureDnsSettings` + * * To update contact information, see `ConfigureContactSettings` + * + * @param {Object} request + * The request object that will be sent. + * @param {google.cloud.domains.v1alpha2.Registration} request.registration + * Fields of the `Registration` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the labels are being updated, the `update_mask` is + * `"labels"`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.update_registration.js + * region_tag:domains_v1alpha2_generated_Domains_UpdateRegistration_async + */ updateRegistration( - request?: protos.google.cloud.domains.v1alpha2.IUpdateRegistrationRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IUpdateRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; updateRegistration( - request: protos.google.cloud.domains.v1alpha2.IUpdateRegistrationRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IUpdateRegistrationRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; updateRegistration( - request: protos.google.cloud.domains.v1alpha2.IUpdateRegistrationRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IUpdateRegistrationRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; updateRegistration( - request?: protos.google.cloud.domains.v1alpha2.IUpdateRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1alpha2.IUpdateRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration.name': request.registration!.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + 'registration.name': request.registration!.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('updateRegistration response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('updateRegistration request %j', request); - return this.innerApiCalls.updateRegistration(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('updateRegistration response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .updateRegistration(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('updateRegistration response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `updateRegistration()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.update_registration.js - * region_tag:domains_v1alpha2_generated_Domains_UpdateRegistration_async - */ - async checkUpdateRegistrationProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `updateRegistration()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.update_registration.js + * region_tag:domains_v1alpha2_generated_Domains_UpdateRegistration_async + */ + async checkUpdateRegistrationProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + > + > { this._log.info('updateRegistration long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.updateRegistration, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.updateRegistration, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + >; } -/** - * Updates a `Registration`'s management settings. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose management settings are being updated, - * in the format `projects/* /locations/* /registrations/*`. - * @param {google.cloud.domains.v1alpha2.ManagementSettings} request.managementSettings - * Fields of the `ManagementSettings` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the transfer lock is being updated, the `update_mask` - * is `"transfer_lock_state"`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.configure_management_settings.js - * region_tag:domains_v1alpha2_generated_Domains_ConfigureManagementSettings_async - */ + /** + * Updates a `Registration`'s management settings. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose management settings are being updated, + * in the format `projects/* /locations/* /registrations/*`. + * @param {google.cloud.domains.v1alpha2.ManagementSettings} request.managementSettings + * Fields of the `ManagementSettings` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the transfer lock is being updated, the `update_mask` + * is `"transfer_lock_state"`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.configure_management_settings.js + * region_tag:domains_v1alpha2_generated_Domains_ConfigureManagementSettings_async + */ configureManagementSettings( - request?: protos.google.cloud.domains.v1alpha2.IConfigureManagementSettingsRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IConfigureManagementSettingsRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; configureManagementSettings( - request: protos.google.cloud.domains.v1alpha2.IConfigureManagementSettingsRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IConfigureManagementSettingsRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureManagementSettings( - request: protos.google.cloud.domains.v1alpha2.IConfigureManagementSettingsRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IConfigureManagementSettingsRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureManagementSettings( - request?: protos.google.cloud.domains.v1alpha2.IConfigureManagementSettingsRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1alpha2.IConfigureManagementSettingsRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { - this._log.info('configureManagementSettings response %j', rawResponse); + this._log.info( + 'configureManagementSettings response %j', + rawResponse, + ); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('configureManagementSettings request %j', request); - return this.innerApiCalls.configureManagementSettings(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('configureManagementSettings response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .configureManagementSettings(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info( + 'configureManagementSettings response %j', + rawResponse, + ); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `configureManagementSettings()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.configure_management_settings.js - * region_tag:domains_v1alpha2_generated_Domains_ConfigureManagementSettings_async - */ - async checkConfigureManagementSettingsProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `configureManagementSettings()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.configure_management_settings.js + * region_tag:domains_v1alpha2_generated_Domains_ConfigureManagementSettings_async + */ + async checkConfigureManagementSettingsProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + > + > { this._log.info('configureManagementSettings long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.configureManagementSettings, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.configureManagementSettings, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + >; } -/** - * Updates a `Registration`'s DNS settings. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose DNS settings are being updated, - * in the format `projects/* /locations/* /registrations/*`. - * @param {google.cloud.domains.v1alpha2.DnsSettings} request.dnsSettings - * Fields of the `DnsSettings` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the name servers are being updated for an existing - * Custom DNS configuration, the `update_mask` is - * `"custom_dns.name_servers"`. - * - * When changing the DNS provider from one type to another, pass the new - * provider's field name as part of the field mask. For example, when changing - * from a Google Domains DNS configuration to a Custom DNS configuration, the - * `update_mask` is `"custom_dns"`. // - * @param {boolean} request.validateOnly - * Validate the request without actually updating the DNS settings. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.configure_dns_settings.js - * region_tag:domains_v1alpha2_generated_Domains_ConfigureDnsSettings_async - */ + /** + * Updates a `Registration`'s DNS settings. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose DNS settings are being updated, + * in the format `projects/* /locations/* /registrations/*`. + * @param {google.cloud.domains.v1alpha2.DnsSettings} request.dnsSettings + * Fields of the `DnsSettings` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the name servers are being updated for an existing + * Custom DNS configuration, the `update_mask` is + * `"custom_dns.name_servers"`. + * + * When changing the DNS provider from one type to another, pass the new + * provider's field name as part of the field mask. For example, when changing + * from a Google Domains DNS configuration to a Custom DNS configuration, the + * `update_mask` is `"custom_dns"`. // + * @param {boolean} request.validateOnly + * Validate the request without actually updating the DNS settings. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.configure_dns_settings.js + * region_tag:domains_v1alpha2_generated_Domains_ConfigureDnsSettings_async + */ configureDnsSettings( - request?: protos.google.cloud.domains.v1alpha2.IConfigureDnsSettingsRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IConfigureDnsSettingsRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; configureDnsSettings( - request: protos.google.cloud.domains.v1alpha2.IConfigureDnsSettingsRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IConfigureDnsSettingsRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureDnsSettings( - request: protos.google.cloud.domains.v1alpha2.IConfigureDnsSettingsRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IConfigureDnsSettingsRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureDnsSettings( - request?: protos.google.cloud.domains.v1alpha2.IConfigureDnsSettingsRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1alpha2.IConfigureDnsSettingsRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('configureDnsSettings response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('configureDnsSettings request %j', request); - return this.innerApiCalls.configureDnsSettings(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('configureDnsSettings response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .configureDnsSettings(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('configureDnsSettings response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `configureDnsSettings()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.configure_dns_settings.js - * region_tag:domains_v1alpha2_generated_Domains_ConfigureDnsSettings_async - */ - async checkConfigureDnsSettingsProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `configureDnsSettings()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.configure_dns_settings.js + * region_tag:domains_v1alpha2_generated_Domains_ConfigureDnsSettings_async + */ + async checkConfigureDnsSettingsProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + > + > { this._log.info('configureDnsSettings long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.configureDnsSettings, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.configureDnsSettings, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + >; } -/** - * Updates a `Registration`'s contact settings. Some changes require - * confirmation by the domain's registrant contact . - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose contact settings are being updated, - * in the format `projects/* /locations/* /registrations/*`. - * @param {google.cloud.domains.v1alpha2.ContactSettings} request.contactSettings - * Fields of the `ContactSettings` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the registrant contact is being updated, the - * `update_mask` is `"registrant_contact"`. - * @param {number[]} request.contactNotices - * The list of contact notices that the caller acknowledges. The notices - * needed here depend on the values specified in `contact_settings`. - * @param {boolean} request.validateOnly - * Validate the request without actually updating the contact settings. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.configure_contact_settings.js - * region_tag:domains_v1alpha2_generated_Domains_ConfigureContactSettings_async - */ + /** + * Updates a `Registration`'s contact settings. Some changes require + * confirmation by the domain's registrant contact . + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose contact settings are being updated, + * in the format `projects/* /locations/* /registrations/*`. + * @param {google.cloud.domains.v1alpha2.ContactSettings} request.contactSettings + * Fields of the `ContactSettings` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the registrant contact is being updated, the + * `update_mask` is `"registrant_contact"`. + * @param {number[]} request.contactNotices + * The list of contact notices that the caller acknowledges. The notices + * needed here depend on the values specified in `contact_settings`. + * @param {boolean} request.validateOnly + * Validate the request without actually updating the contact settings. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.configure_contact_settings.js + * region_tag:domains_v1alpha2_generated_Domains_ConfigureContactSettings_async + */ configureContactSettings( - request?: protos.google.cloud.domains.v1alpha2.IConfigureContactSettingsRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IConfigureContactSettingsRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; configureContactSettings( - request: protos.google.cloud.domains.v1alpha2.IConfigureContactSettingsRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IConfigureContactSettingsRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureContactSettings( - request: protos.google.cloud.domains.v1alpha2.IConfigureContactSettingsRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IConfigureContactSettingsRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureContactSettings( - request?: protos.google.cloud.domains.v1alpha2.IConfigureContactSettingsRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1alpha2.IConfigureContactSettingsRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('configureContactSettings response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('configureContactSettings request %j', request); - return this.innerApiCalls.configureContactSettings(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('configureContactSettings response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .configureContactSettings(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('configureContactSettings response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `configureContactSettings()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.configure_contact_settings.js - * region_tag:domains_v1alpha2_generated_Domains_ConfigureContactSettings_async - */ - async checkConfigureContactSettingsProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `configureContactSettings()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.configure_contact_settings.js + * region_tag:domains_v1alpha2_generated_Domains_ConfigureContactSettings_async + */ + async checkConfigureContactSettingsProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + > + > { this._log.info('configureContactSettings long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.configureContactSettings, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.configureContactSettings, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + >; } -/** - * Exports a `Registration` resource, such that it is no longer managed by - * Cloud Domains. - * - * When an active domain is successfully exported, you can continue to use the - * domain in [Google Domains](https://domains.google/) until it expires. The - * calling user becomes the domain's sole owner in Google Domains, and - * permissions for the domain are subsequently managed there. The domain does - * not renew automatically unless the new owner sets up billing in Google - * Domains. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The name of the `Registration` to export, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.export_registration.js - * region_tag:domains_v1alpha2_generated_Domains_ExportRegistration_async - */ + /** + * Exports a `Registration` resource, such that it is no longer managed by + * Cloud Domains. + * + * When an active domain is successfully exported, you can continue to use the + * domain in [Google Domains](https://domains.google/) until it expires. The + * calling user becomes the domain's sole owner in Google Domains, and + * permissions for the domain are subsequently managed there. The domain does + * not renew automatically unless the new owner sets up billing in Google + * Domains. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The name of the `Registration` to export, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.export_registration.js + * region_tag:domains_v1alpha2_generated_Domains_ExportRegistration_async + */ exportRegistration( - request?: protos.google.cloud.domains.v1alpha2.IExportRegistrationRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IExportRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; exportRegistration( - request: protos.google.cloud.domains.v1alpha2.IExportRegistrationRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IExportRegistrationRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; exportRegistration( - request: protos.google.cloud.domains.v1alpha2.IExportRegistrationRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IExportRegistrationRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; exportRegistration( - request?: protos.google.cloud.domains.v1alpha2.IExportRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1alpha2.IExportRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('exportRegistration response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('exportRegistration request %j', request); - return this.innerApiCalls.exportRegistration(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('exportRegistration response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .exportRegistration(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('exportRegistration response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `exportRegistration()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.export_registration.js - * region_tag:domains_v1alpha2_generated_Domains_ExportRegistration_async - */ - async checkExportRegistrationProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `exportRegistration()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.export_registration.js + * region_tag:domains_v1alpha2_generated_Domains_ExportRegistration_async + */ + async checkExportRegistrationProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + > + > { this._log.info('exportRegistration long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.exportRegistration, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.exportRegistration, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1alpha2.Registration, + protos.google.cloud.domains.v1alpha2.OperationMetadata + >; } -/** - * Deletes a `Registration` resource. - * - * This method works on any `Registration` resource using [Subscription or - * Commitment billing](/domains/pricing#billing-models), provided that the - * resource was created at least 1 day in the past. - * - * For `Registration` resources using - * [Monthly billing](/domains/pricing#billing-models), this method works if: - * - * * `state` is `EXPORTED` with `expire_time` in the past - * * `state` is `REGISTRATION_FAILED` - * * `state` is `TRANSFER_FAILED` - * - * When an active registration is successfully deleted, you can continue to - * use the domain in [Google Domains](https://domains.google/) until it - * expires. The calling user becomes the domain's sole owner in Google - * Domains, and permissions for the domain are subsequently managed there. The - * domain does not renew automatically unless the new owner sets up billing in - * Google Domains. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The name of the `Registration` to delete, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.delete_registration.js - * region_tag:domains_v1alpha2_generated_Domains_DeleteRegistration_async - */ + /** + * Deletes a `Registration` resource. + * + * This method works on any `Registration` resource using [Subscription or + * Commitment billing](/domains/pricing#billing-models), provided that the + * resource was created at least 1 day in the past. + * + * For `Registration` resources using + * [Monthly billing](/domains/pricing#billing-models), this method works if: + * + * * `state` is `EXPORTED` with `expire_time` in the past + * * `state` is `REGISTRATION_FAILED` + * * `state` is `TRANSFER_FAILED` + * + * When an active registration is successfully deleted, you can continue to + * use the domain in [Google Domains](https://domains.google/) until it + * expires. The calling user becomes the domain's sole owner in Google + * Domains, and permissions for the domain are subsequently managed there. The + * domain does not renew automatically unless the new owner sets up billing in + * Google Domains. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The name of the `Registration` to delete, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.delete_registration.js + * region_tag:domains_v1alpha2_generated_Domains_DeleteRegistration_async + */ deleteRegistration( - request?: protos.google.cloud.domains.v1alpha2.IDeleteRegistrationRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1alpha2.IDeleteRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; deleteRegistration( - request: protos.google.cloud.domains.v1alpha2.IDeleteRegistrationRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IDeleteRegistrationRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; deleteRegistration( - request: protos.google.cloud.domains.v1alpha2.IDeleteRegistrationRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1alpha2.IDeleteRegistrationRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; deleteRegistration( - request?: protos.google.cloud.domains.v1alpha2.IDeleteRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1alpha2.IDeleteRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('deleteRegistration response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('deleteRegistration request %j', request); - return this.innerApiCalls.deleteRegistration(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('deleteRegistration response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .deleteRegistration(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('deleteRegistration response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `deleteRegistration()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.delete_registration.js - * region_tag:domains_v1alpha2_generated_Domains_DeleteRegistration_async - */ - async checkDeleteRegistrationProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `deleteRegistration()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.delete_registration.js + * region_tag:domains_v1alpha2_generated_Domains_DeleteRegistration_async + */ + async checkDeleteRegistrationProgress( + name: string, + ): Promise< + LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.domains.v1alpha2.OperationMetadata + > + > { this._log.info('deleteRegistration long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.deleteRegistration, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.deleteRegistration, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.domains.v1alpha2.OperationMetadata + >; } - /** - * Lists the `Registration` resources in a project. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The project and location from which to list `Registration`s, specified in - * the format `projects/* /locations/*`. - * @param {number} request.pageSize - * Maximum number of results to return. - * @param {string} request.pageToken - * When set to the `next_page_token` from a prior response, provides the next - * page of results. - * @param {string} request.filter - * Filter expression to restrict the `Registration`s returned. - * - * The expression must specify the field name, a comparison operator, and the - * value that you want to use for filtering. The value must be a string, a - * number, a boolean, or an enum value. The comparison operator should be one - * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. - * - * For example, to filter to a specific domain name, use an expression like - * `domainName="example.com"`. You can also check for the existence of a - * field; for example, to find domains using custom DNS settings, use an - * expression like `dnsSettings.customDns:*`. - * - * You can also create compound filters by combining expressions with the - * `AND` and `OR` operators. For example, to find domains that are suspended - * or have specific issues flagged, use an expression like - * `(state=SUSPENDED) OR (issue:*)`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is Array of {@link protos.google.cloud.domains.v1alpha2.Registration|Registration}. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed and will merge results from all the pages into this array. - * Note that it can affect your quota. - * We recommend using `listRegistrationsAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Lists the `Registration` resources in a project. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The project and location from which to list `Registration`s, specified in + * the format `projects/* /locations/*`. + * @param {number} request.pageSize + * Maximum number of results to return. + * @param {string} request.pageToken + * When set to the `next_page_token` from a prior response, provides the next + * page of results. + * @param {string} request.filter + * Filter expression to restrict the `Registration`s returned. + * + * The expression must specify the field name, a comparison operator, and the + * value that you want to use for filtering. The value must be a string, a + * number, a boolean, or an enum value. The comparison operator should be one + * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. + * + * For example, to filter to a specific domain name, use an expression like + * `domainName="example.com"`. You can also check for the existence of a + * field; for example, to find domains using custom DNS settings, use an + * expression like `dnsSettings.customDns:*`. + * + * You can also create compound filters by combining expressions with the + * `AND` and `OR` operators. For example, to find domains that are suspended + * or have specific issues flagged, use an expression like + * `(state=SUSPENDED) OR (issue:*)`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of {@link protos.google.cloud.domains.v1alpha2.Registration|Registration}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listRegistrationsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listRegistrations( - request?: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1alpha2.IRegistration[], - protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest|null, - protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse - ]>; + request?: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IRegistration[], + protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest | null, + protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse, + ] + >; listRegistrations( - request: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, - options: CallOptions, - callback: PaginationCallback< - protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, - protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1alpha2.IRegistration>): void; + request: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, + | protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1alpha2.IRegistration + >, + ): void; listRegistrations( - request: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, - callback: PaginationCallback< - protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, - protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1alpha2.IRegistration>): void; + request: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, + callback: PaginationCallback< + protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, + | protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1alpha2.IRegistration + >, + ): void; listRegistrations( - request?: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, - optionsOrCallback?: CallOptions|PaginationCallback< - protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, - protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1alpha2.IRegistration>, - callback?: PaginationCallback< + request?: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, - protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1alpha2.IRegistration>): - Promise<[ - protos.google.cloud.domains.v1alpha2.IRegistration[], - protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest|null, - protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse - ]>|void { + | protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1alpha2.IRegistration + >, + callback?: PaginationCallback< + protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, + | protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1alpha2.IRegistration + >, + ): Promise< + [ + protos.google.cloud.domains.v1alpha2.IRegistration[], + protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest | null, + protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: PaginationCallback< - protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, - protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1alpha2.IRegistration>|undefined = callback + const wrappedCallback: + | PaginationCallback< + protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, + | protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1alpha2.IRegistration + > + | undefined = callback ? (error, values, nextPageRequest, rawResponse) => { this._log.info('listRegistrations values %j', values); callback!(error, values, nextPageRequest, rawResponse); // We verified callback above. @@ -2121,144 +3060,148 @@ export class DomainsClient { this._log.info('listRegistrations request %j', request); return this.innerApiCalls .listRegistrations(request, options, wrappedCallback) - ?.then(([response, input, output]: [ - protos.google.cloud.domains.v1alpha2.IRegistration[], - protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest|null, - protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse - ]) => { - this._log.info('listRegistrations values %j', response); - return [response, input, output]; - }); + ?.then( + ([response, input, output]: [ + protos.google.cloud.domains.v1alpha2.IRegistration[], + protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest | null, + protos.google.cloud.domains.v1alpha2.IListRegistrationsResponse, + ]) => { + this._log.info('listRegistrations values %j', response); + return [response, input, output]; + }, + ); } -/** - * Equivalent to `listRegistrations`, but returns a NodeJS Stream object. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The project and location from which to list `Registration`s, specified in - * the format `projects/* /locations/*`. - * @param {number} request.pageSize - * Maximum number of results to return. - * @param {string} request.pageToken - * When set to the `next_page_token` from a prior response, provides the next - * page of results. - * @param {string} request.filter - * Filter expression to restrict the `Registration`s returned. - * - * The expression must specify the field name, a comparison operator, and the - * value that you want to use for filtering. The value must be a string, a - * number, a boolean, or an enum value. The comparison operator should be one - * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. - * - * For example, to filter to a specific domain name, use an expression like - * `domainName="example.com"`. You can also check for the existence of a - * field; for example, to find domains using custom DNS settings, use an - * expression like `dnsSettings.customDns:*`. - * - * You can also create compound filters by combining expressions with the - * `AND` and `OR` operators. For example, to find domains that are suspended - * or have specific issues flagged, use an expression like - * `(state=SUSPENDED) OR (issue:*)`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Stream} - * An object stream which emits an object representing {@link protos.google.cloud.domains.v1alpha2.Registration|Registration} on 'data' event. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed. Note that it can affect your quota. - * We recommend using `listRegistrationsAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Equivalent to `listRegistrations`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The project and location from which to list `Registration`s, specified in + * the format `projects/* /locations/*`. + * @param {number} request.pageSize + * Maximum number of results to return. + * @param {string} request.pageToken + * When set to the `next_page_token` from a prior response, provides the next + * page of results. + * @param {string} request.filter + * Filter expression to restrict the `Registration`s returned. + * + * The expression must specify the field name, a comparison operator, and the + * value that you want to use for filtering. The value must be a string, a + * number, a boolean, or an enum value. The comparison operator should be one + * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. + * + * For example, to filter to a specific domain name, use an expression like + * `domainName="example.com"`. You can also check for the existence of a + * field; for example, to find domains using custom DNS settings, use an + * expression like `dnsSettings.customDns:*`. + * + * You can also create compound filters by combining expressions with the + * `AND` and `OR` operators. For example, to find domains that are suspended + * or have specific issues flagged, use an expression like + * `(state=SUSPENDED) OR (issue:*)`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing {@link protos.google.cloud.domains.v1alpha2.Registration|Registration} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listRegistrationsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listRegistrationsStream( - request?: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, - options?: CallOptions): - Transform{ + request?: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, + options?: CallOptions, + ): Transform { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); const defaultCallSettings = this._defaults['listRegistrations']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listRegistrations stream %j', request); return this.descriptors.page.listRegistrations.createStream( this.innerApiCalls.listRegistrations as GaxCall, request, - callSettings + callSettings, ); } -/** - * Equivalent to `listRegistrations`, but returns an iterable object. - * - * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The project and location from which to list `Registration`s, specified in - * the format `projects/* /locations/*`. - * @param {number} request.pageSize - * Maximum number of results to return. - * @param {string} request.pageToken - * When set to the `next_page_token` from a prior response, provides the next - * page of results. - * @param {string} request.filter - * Filter expression to restrict the `Registration`s returned. - * - * The expression must specify the field name, a comparison operator, and the - * value that you want to use for filtering. The value must be a string, a - * number, a boolean, or an enum value. The comparison operator should be one - * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. - * - * For example, to filter to a specific domain name, use an expression like - * `domainName="example.com"`. You can also check for the existence of a - * field; for example, to find domains using custom DNS settings, use an - * expression like `dnsSettings.customDns:*`. - * - * You can also create compound filters by combining expressions with the - * `AND` and `OR` operators. For example, to find domains that are suspended - * or have specific issues flagged, use an expression like - * `(state=SUSPENDED) OR (issue:*)`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Object} - * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. - * When you iterate the returned iterable, each element will be an object representing - * {@link protos.google.cloud.domains.v1alpha2.Registration|Registration}. The API will be called under the hood as needed, once per the page, - * so you can stop the iteration when you don't need more results. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - * @example include:samples/generated/v1alpha2/domains.list_registrations.js - * region_tag:domains_v1alpha2_generated_Domains_ListRegistrations_async - */ + /** + * Equivalent to `listRegistrations`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The project and location from which to list `Registration`s, specified in + * the format `projects/* /locations/*`. + * @param {number} request.pageSize + * Maximum number of results to return. + * @param {string} request.pageToken + * When set to the `next_page_token` from a prior response, provides the next + * page of results. + * @param {string} request.filter + * Filter expression to restrict the `Registration`s returned. + * + * The expression must specify the field name, a comparison operator, and the + * value that you want to use for filtering. The value must be a string, a + * number, a boolean, or an enum value. The comparison operator should be one + * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. + * + * For example, to filter to a specific domain name, use an expression like + * `domainName="example.com"`. You can also check for the existence of a + * field; for example, to find domains using custom DNS settings, use an + * expression like `dnsSettings.customDns:*`. + * + * You can also create compound filters by combining expressions with the + * `AND` and `OR` operators. For example, to find domains that are suspended + * or have specific issues flagged, use an expression like + * `(state=SUSPENDED) OR (issue:*)`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. + * When you iterate the returned iterable, each element will be an object representing + * {@link protos.google.cloud.domains.v1alpha2.Registration|Registration}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + * @example include:samples/generated/v1alpha2/domains.list_registrations.js + * region_tag:domains_v1alpha2_generated_Domains_ListRegistrations_async + */ listRegistrationsAsync( - request?: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, - options?: CallOptions): - AsyncIterable{ + request?: protos.google.cloud.domains.v1alpha2.IListRegistrationsRequest, + options?: CallOptions, + ): AsyncIterable { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); const defaultCallSettings = this._defaults['listRegistrations']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listRegistrations iterate %j', request); return this.descriptors.page.listRegistrations.asyncIterate( this.innerApiCalls['listRegistrations'] as GaxCall, request as {}, - callSettings + callSettings, ) as AsyncIterable; } // -------------------- @@ -2272,7 +3215,7 @@ export class DomainsClient { * @param {string} location * @returns {string} Resource name string. */ - locationPath(project:string,location:string) { + locationPath(project: string, location: string) { return this.pathTemplates.locationPathTemplate.render({ project: project, location: location, @@ -2309,7 +3252,7 @@ export class DomainsClient { * @param {string} registration * @returns {string} Resource name string. */ - registrationPath(project:string,location:string,registration:string) { + registrationPath(project: string, location: string, registration: string) { return this.pathTemplates.registrationPathTemplate.render({ project: project, location: location, @@ -2325,7 +3268,8 @@ export class DomainsClient { * @returns {string} A string representing the project. */ matchProjectFromRegistrationName(registrationName: string) { - return this.pathTemplates.registrationPathTemplate.match(registrationName).project; + return this.pathTemplates.registrationPathTemplate.match(registrationName) + .project; } /** @@ -2336,7 +3280,8 @@ export class DomainsClient { * @returns {string} A string representing the location. */ matchLocationFromRegistrationName(registrationName: string) { - return this.pathTemplates.registrationPathTemplate.match(registrationName).location; + return this.pathTemplates.registrationPathTemplate.match(registrationName) + .location; } /** @@ -2347,7 +3292,8 @@ export class DomainsClient { * @returns {string} A string representing the registration. */ matchRegistrationFromRegistrationName(registrationName: string) { - return this.pathTemplates.registrationPathTemplate.match(registrationName).registration; + return this.pathTemplates.registrationPathTemplate.match(registrationName) + .registration; } /** @@ -2358,7 +3304,7 @@ export class DomainsClient { */ close(): Promise { if (this.domainsStub && !this._terminated) { - return this.domainsStub.then(stub => { + return this.domainsStub.then((stub) => { this._log.info('ending gRPC channel'); this._terminated = true; stub.close(); @@ -2367,4 +3313,4 @@ export class DomainsClient { } return Promise.resolve(); } -} \ No newline at end of file +} diff --git a/packages/google-cloud-domains/src/v1alpha2/index.ts b/packages/google-cloud-domains/src/v1alpha2/index.ts index fa4156724d39..2a910d56857f 100644 --- a/packages/google-cloud-domains/src/v1alpha2/index.ts +++ b/packages/google-cloud-domains/src/v1alpha2/index.ts @@ -16,4 +16,4 @@ // ** https://github.com/googleapis/gapic-generator-typescript ** // ** All changes to this file may be overwritten. ** -export {DomainsClient} from './domains_client'; +export { DomainsClient } from './domains_client'; diff --git a/packages/google-cloud-domains/src/v1beta1/domains_client.ts b/packages/google-cloud-domains/src/v1beta1/domains_client.ts index 831a7cd8d024..0f623a6ec1b5 100644 --- a/packages/google-cloud-domains/src/v1beta1/domains_client.ts +++ b/packages/google-cloud-domains/src/v1beta1/domains_client.ts @@ -18,11 +18,20 @@ /* global window */ import type * as gax from 'google-gax'; -import type {Callback, CallOptions, Descriptors, ClientOptions, GrpcClientOptions, LROperation, PaginationCallback, GaxCall} from 'google-gax'; -import {Transform} from 'stream'; +import type { + Callback, + CallOptions, + Descriptors, + ClientOptions, + GrpcClientOptions, + LROperation, + PaginationCallback, + GaxCall, +} from 'google-gax'; +import { Transform } from 'stream'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); -import {loggingUtils as logging, decodeAnyProtosInArray} from 'google-gax'; +import { loggingUtils as logging, decodeAnyProtosInArray } from 'google-gax'; /** * Client JSON configuration object, loaded from @@ -44,7 +53,7 @@ export class DomainsClient { private _gaxModule: typeof gax | typeof gax.fallback; private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; private _protos: {}; - private _defaults: {[method: string]: gax.CallSettings}; + private _defaults: { [method: string]: gax.CallSettings }; private _universeDomain: string; private _servicePath: string; private _log = logging.log('domains'); @@ -57,10 +66,10 @@ export class DomainsClient { batching: {}, }; warn: (code: string, message: string, warnType?: string) => void; - innerApiCalls: {[name: string]: Function}; - pathTemplates: {[name: string]: gax.PathTemplate}; + innerApiCalls: { [name: string]: Function }; + pathTemplates: { [name: string]: gax.PathTemplate }; operationsClient: gax.OperationsClient; - domainsStub?: Promise<{[name: string]: Function}>; + domainsStub?: Promise<{ [name: string]: Function }>; /** * Construct an instance of DomainsClient. @@ -101,21 +110,42 @@ export class DomainsClient { * const client = new DomainsClient({fallback: true}, gax); * ``` */ - constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback) { + constructor( + opts?: ClientOptions, + gaxInstance?: typeof gax | typeof gax.fallback, + ) { // Ensure that options include all the required fields. const staticMembers = this.constructor as typeof DomainsClient; - if (opts?.universe_domain && opts?.universeDomain && opts?.universe_domain !== opts?.universeDomain) { - throw new Error('Please set either universe_domain or universeDomain, but not both.'); + if ( + opts?.universe_domain && + opts?.universeDomain && + opts?.universe_domain !== opts?.universeDomain + ) { + throw new Error( + 'Please set either universe_domain or universeDomain, but not both.', + ); } - const universeDomainEnvVar = (typeof process === 'object' && typeof process.env === 'object') ? process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] : undefined; - this._universeDomain = opts?.universeDomain ?? opts?.universe_domain ?? universeDomainEnvVar ?? 'googleapis.com'; + const universeDomainEnvVar = + typeof process === 'object' && typeof process.env === 'object' + ? process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] + : undefined; + this._universeDomain = + opts?.universeDomain ?? + opts?.universe_domain ?? + universeDomainEnvVar ?? + 'googleapis.com'; this._servicePath = 'domains.' + this._universeDomain; - const servicePath = opts?.servicePath || opts?.apiEndpoint || this._servicePath; - this._providedCustomServicePath = !!(opts?.servicePath || opts?.apiEndpoint); + const servicePath = + opts?.servicePath || opts?.apiEndpoint || this._servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); const port = opts?.port || staticMembers.port; const clientConfig = opts?.clientConfig ?? {}; - const fallback = opts?.fallback ?? (typeof window !== 'undefined' && typeof window?.fetch === 'function'); - opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({ servicePath, port, clientConfig, fallback }, opts); // Request numeric enum values if REST transport is used. opts.numericEnums = true; @@ -140,7 +170,7 @@ export class DomainsClient { this._opts = opts; // Save the auth object to the client, for use by other methods. - this.auth = (this._gaxGrpc.auth as gax.GoogleAuth); + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; // Set useJWTAccessWithScope on the auth object. this.auth.useJWTAccessWithScope = true; @@ -154,10 +184,7 @@ export class DomainsClient { } // Determine the client header string. - const clientHeader = [ - `gax/${this._gaxModule.version}`, - `gapic/${version}`, - ]; + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; if (typeof process === 'object' && 'versions' in process) { clientHeader.push(`gl-node/${process.versions.node}`); } else { @@ -179,10 +206,10 @@ export class DomainsClient { // Create useful helper objects for these. this.pathTemplates = { locationPathTemplate: new this._gaxModule.PathTemplate( - 'projects/{project}/locations/{location}' + 'projects/{project}/locations/{location}', ), registrationPathTemplate: new this._gaxModule.PathTemplate( - 'projects/{project}/locations/{location}/registrations/{registration}' + 'projects/{project}/locations/{location}/registrations/{registration}', ), }; @@ -190,8 +217,11 @@ export class DomainsClient { // (e.g. 50 results at a time, with tokens to get subsequent // pages). Denote the keys used for pagination and results. this.descriptors.page = { - listRegistrations: - new this._gaxModule.PageDescriptor('pageToken', 'nextPageToken', 'registrations') + listRegistrations: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'registrations', + ), }; const protoFilesRoot = this._gaxModule.protobufFromJSON(jsonProtos); @@ -200,85 +230,153 @@ export class DomainsClient { // rather than holding a request open. const lroOptions: GrpcClientOptions = { auth: this.auth, - grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, }; if (opts.fallback) { lroOptions.protoJson = protoFilesRoot; - lroOptions.httpRules = [{selector: 'google.cloud.location.Locations.GetLocation',get: '/v1beta1/{name=projects/*/locations/*}',},{selector: 'google.cloud.location.Locations.ListLocations',get: '/v1beta1/{name=projects/*}/locations',},{selector: 'google.iam.v1.IAMPolicy.GetIamPolicy',get: '/v1beta1/{resource=projects/*/locations/*/registrations/*}:getIamPolicy',},{selector: 'google.iam.v1.IAMPolicy.SetIamPolicy',post: '/v1beta1/{resource=projects/*/locations/*/registrations/*}:setIamPolicy',body: '*',},{selector: 'google.iam.v1.IAMPolicy.TestIamPermissions',post: '/v1beta1/{resource=projects/*/locations/*/registrations/*}:testIamPermissions',body: '*',},{selector: 'google.longrunning.Operations.GetOperation',get: '/v1beta1/{name=projects/*/locations/*/operations/*}',},{selector: 'google.longrunning.Operations.ListOperations',get: '/v1beta1/{name=projects/*/locations/*}/operations',}]; + lroOptions.httpRules = [ + { + selector: 'google.cloud.location.Locations.GetLocation', + get: '/v1beta1/{name=projects/*/locations/*}', + }, + { + selector: 'google.cloud.location.Locations.ListLocations', + get: '/v1beta1/{name=projects/*}/locations', + }, + { + selector: 'google.iam.v1.IAMPolicy.GetIamPolicy', + get: '/v1beta1/{resource=projects/*/locations/*/registrations/*}:getIamPolicy', + }, + { + selector: 'google.iam.v1.IAMPolicy.SetIamPolicy', + post: '/v1beta1/{resource=projects/*/locations/*/registrations/*}:setIamPolicy', + body: '*', + }, + { + selector: 'google.iam.v1.IAMPolicy.TestIamPermissions', + post: '/v1beta1/{resource=projects/*/locations/*/registrations/*}:testIamPermissions', + body: '*', + }, + { + selector: 'google.longrunning.Operations.GetOperation', + get: '/v1beta1/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.ListOperations', + get: '/v1beta1/{name=projects/*/locations/*}/operations', + }, + ]; } - this.operationsClient = this._gaxModule.lro(lroOptions).operationsClient(opts); + this.operationsClient = this._gaxModule + .lro(lroOptions) + .operationsClient(opts); const registerDomainResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.Registration', + ) as gax.protobuf.Type; const registerDomainMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.OperationMetadata', + ) as gax.protobuf.Type; const transferDomainResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.Registration', + ) as gax.protobuf.Type; const transferDomainMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.OperationMetadata', + ) as gax.protobuf.Type; const updateRegistrationResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.Registration', + ) as gax.protobuf.Type; const updateRegistrationMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.OperationMetadata', + ) as gax.protobuf.Type; const configureManagementSettingsResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.Registration', + ) as gax.protobuf.Type; const configureManagementSettingsMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.OperationMetadata', + ) as gax.protobuf.Type; const configureDnsSettingsResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.Registration', + ) as gax.protobuf.Type; const configureDnsSettingsMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.OperationMetadata', + ) as gax.protobuf.Type; const configureContactSettingsResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.Registration', + ) as gax.protobuf.Type; const configureContactSettingsMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.OperationMetadata', + ) as gax.protobuf.Type; const exportRegistrationResponse = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.Registration') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.Registration', + ) as gax.protobuf.Type; const exportRegistrationMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.OperationMetadata', + ) as gax.protobuf.Type; const deleteRegistrationResponse = protoFilesRoot.lookup( - '.google.protobuf.Empty') as gax.protobuf.Type; + '.google.protobuf.Empty', + ) as gax.protobuf.Type; const deleteRegistrationMetadata = protoFilesRoot.lookup( - '.google.cloud.domains.v1beta1.OperationMetadata') as gax.protobuf.Type; + '.google.cloud.domains.v1beta1.OperationMetadata', + ) as gax.protobuf.Type; this.descriptors.longrunning = { registerDomain: new this._gaxModule.LongrunningDescriptor( this.operationsClient, registerDomainResponse.decode.bind(registerDomainResponse), - registerDomainMetadata.decode.bind(registerDomainMetadata)), + registerDomainMetadata.decode.bind(registerDomainMetadata), + ), transferDomain: new this._gaxModule.LongrunningDescriptor( this.operationsClient, transferDomainResponse.decode.bind(transferDomainResponse), - transferDomainMetadata.decode.bind(transferDomainMetadata)), + transferDomainMetadata.decode.bind(transferDomainMetadata), + ), updateRegistration: new this._gaxModule.LongrunningDescriptor( this.operationsClient, updateRegistrationResponse.decode.bind(updateRegistrationResponse), - updateRegistrationMetadata.decode.bind(updateRegistrationMetadata)), + updateRegistrationMetadata.decode.bind(updateRegistrationMetadata), + ), configureManagementSettings: new this._gaxModule.LongrunningDescriptor( this.operationsClient, - configureManagementSettingsResponse.decode.bind(configureManagementSettingsResponse), - configureManagementSettingsMetadata.decode.bind(configureManagementSettingsMetadata)), + configureManagementSettingsResponse.decode.bind( + configureManagementSettingsResponse, + ), + configureManagementSettingsMetadata.decode.bind( + configureManagementSettingsMetadata, + ), + ), configureDnsSettings: new this._gaxModule.LongrunningDescriptor( this.operationsClient, configureDnsSettingsResponse.decode.bind(configureDnsSettingsResponse), - configureDnsSettingsMetadata.decode.bind(configureDnsSettingsMetadata)), + configureDnsSettingsMetadata.decode.bind(configureDnsSettingsMetadata), + ), configureContactSettings: new this._gaxModule.LongrunningDescriptor( this.operationsClient, - configureContactSettingsResponse.decode.bind(configureContactSettingsResponse), - configureContactSettingsMetadata.decode.bind(configureContactSettingsMetadata)), + configureContactSettingsResponse.decode.bind( + configureContactSettingsResponse, + ), + configureContactSettingsMetadata.decode.bind( + configureContactSettingsMetadata, + ), + ), exportRegistration: new this._gaxModule.LongrunningDescriptor( this.operationsClient, exportRegistrationResponse.decode.bind(exportRegistrationResponse), - exportRegistrationMetadata.decode.bind(exportRegistrationMetadata)), + exportRegistrationMetadata.decode.bind(exportRegistrationMetadata), + ), deleteRegistration: new this._gaxModule.LongrunningDescriptor( this.operationsClient, deleteRegistrationResponse.decode.bind(deleteRegistrationResponse), - deleteRegistrationMetadata.decode.bind(deleteRegistrationMetadata)) + deleteRegistrationMetadata.decode.bind(deleteRegistrationMetadata), + ), }; // Put together the default options sent with requests. this._defaults = this._gaxGrpc.constructSettings( - 'google.cloud.domains.v1beta1.Domains', gapicConfig as gax.ClientConfig, - opts.clientConfig || {}, {'x-goog-api-client': clientHeader.join(' ')}); + 'google.cloud.domains.v1beta1.Domains', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + { 'x-goog-api-client': clientHeader.join(' ') }, + ); // Set up a dictionary of "inner API calls"; the core implementation // of calling the API is handled in `google-gax`, with this code @@ -309,28 +407,49 @@ export class DomainsClient { // Put together the "service stub" for // google.cloud.domains.v1beta1.Domains. this.domainsStub = this._gaxGrpc.createStub( - this._opts.fallback ? - (this._protos as protobuf.Root).lookupService('google.cloud.domains.v1beta1.Domains') : - // eslint-disable-next-line @typescript-eslint/no-explicit-any + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService( + 'google.cloud.domains.v1beta1.Domains', + ) + : // eslint-disable-next-line @typescript-eslint/no-explicit-any (this._protos as any).google.cloud.domains.v1beta1.Domains, - this._opts, this._providedCustomServicePath) as Promise<{[method: string]: Function}>; + this._opts, + this._providedCustomServicePath, + ) as Promise<{ [method: string]: Function }>; // Iterate over each of the methods that the service provides // and create an API call method for each. - const domainsStubMethods = - ['searchDomains', 'retrieveRegisterParameters', 'registerDomain', 'retrieveTransferParameters', 'transferDomain', 'listRegistrations', 'getRegistration', 'updateRegistration', 'configureManagementSettings', 'configureDnsSettings', 'configureContactSettings', 'exportRegistration', 'deleteRegistration', 'retrieveAuthorizationCode', 'resetAuthorizationCode']; + const domainsStubMethods = [ + 'searchDomains', + 'retrieveRegisterParameters', + 'registerDomain', + 'retrieveTransferParameters', + 'transferDomain', + 'listRegistrations', + 'getRegistration', + 'updateRegistration', + 'configureManagementSettings', + 'configureDnsSettings', + 'configureContactSettings', + 'exportRegistration', + 'deleteRegistration', + 'retrieveAuthorizationCode', + 'resetAuthorizationCode', + ]; for (const methodName of domainsStubMethods) { const callPromise = this.domainsStub.then( - stub => (...args: Array<{}>) => { - if (this._terminated) { - return Promise.reject('The client has already been closed.'); - } - const func = stub[methodName]; - return func.apply(stub, args); - }, - (err: Error|null|undefined) => () => { + (stub) => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { throw err; - }); + }, + ); const descriptor = this.descriptors.page[methodName] || @@ -340,7 +459,7 @@ export class DomainsClient { callPromise, this._defaults[methodName], descriptor, - this._opts.fallback + this._opts.fallback, ); this.innerApiCalls[methodName] = apiCall; @@ -355,8 +474,14 @@ export class DomainsClient { * @returns {string} The DNS address for this service. */ static get servicePath() { - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - process.emitWarning('Static servicePath is deprecated, please use the instance method instead.', 'DeprecationWarning'); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + process.emitWarning( + 'Static servicePath is deprecated, please use the instance method instead.', + 'DeprecationWarning', + ); } return 'domains.googleapis.com'; } @@ -367,8 +492,14 @@ export class DomainsClient { * @returns {string} The DNS address for this service. */ static get apiEndpoint() { - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - process.emitWarning('Static apiEndpoint is deprecated, please use the instance method instead.', 'DeprecationWarning'); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + process.emitWarning( + 'Static apiEndpoint is deprecated, please use the instance method instead.', + 'DeprecationWarning', + ); } return 'domains.googleapis.com'; } @@ -399,9 +530,7 @@ export class DomainsClient { * @returns {string[]} List of default scopes. */ static get scopes() { - return [ - 'https://www.googleapis.com/auth/cloud-platform' - ]; + return ['https://www.googleapis.com/auth/cloud-platform']; } getProjectId(): Promise; @@ -410,8 +539,9 @@ export class DomainsClient { * Return the project ID used by this class. * @returns {Promise} A promise that resolves to string containing the project ID. */ - getProjectId(callback?: Callback): - Promise|void { + getProjectId( + callback?: Callback, + ): Promise | void { if (callback) { this.auth.getProjectId(callback); return; @@ -422,1697 +552,2503 @@ export class DomainsClient { // ------------------- // -- Service calls -- // ------------------- -/** - * Searches for available domain names similar to the provided query. - * - * Availability results from this method are approximate; call - * `RetrieveRegisterParameters` on a domain before registering to confirm - * availability. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.query - * Required. String used to search for available domain names. - * @param {string} request.location - * Required. The location. Must be in the format `projects/* /locations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.SearchDomainsResponse|SearchDomainsResponse}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.search_domains.js - * region_tag:domains_v1beta1_generated_Domains_SearchDomains_async - */ + /** + * Searches for available domain names similar to the provided query. + * + * Availability results from this method are approximate; call + * `RetrieveRegisterParameters` on a domain before registering to confirm + * availability. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.query + * Required. String used to search for available domain names. + * @param {string} request.location + * Required. The location. Must be in the format `projects/* /locations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.SearchDomainsResponse|SearchDomainsResponse}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.search_domains.js + * region_tag:domains_v1beta1_generated_Domains_SearchDomains_async + */ searchDomains( - request?: protos.google.cloud.domains.v1beta1.ISearchDomainsRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, - protos.google.cloud.domains.v1beta1.ISearchDomainsRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.ISearchDomainsRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, + protos.google.cloud.domains.v1beta1.ISearchDomainsRequest | undefined, + {} | undefined, + ] + >; searchDomains( - request: protos.google.cloud.domains.v1beta1.ISearchDomainsRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, - protos.google.cloud.domains.v1beta1.ISearchDomainsRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.ISearchDomainsRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, + | protos.google.cloud.domains.v1beta1.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + >, + ): void; searchDomains( - request: protos.google.cloud.domains.v1beta1.ISearchDomainsRequest, - callback: Callback< - protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, - protos.google.cloud.domains.v1beta1.ISearchDomainsRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.ISearchDomainsRequest, + callback: Callback< + protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, + | protos.google.cloud.domains.v1beta1.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + >, + ): void; searchDomains( - request?: protos.google.cloud.domains.v1beta1.ISearchDomainsRequest, - optionsOrCallback?: CallOptions|Callback< - protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, - protos.google.cloud.domains.v1beta1.ISearchDomainsRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.google.cloud.domains.v1beta1.ISearchDomainsRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, - protos.google.cloud.domains.v1beta1.ISearchDomainsRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, - protos.google.cloud.domains.v1beta1.ISearchDomainsRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1beta1.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, + | protos.google.cloud.domains.v1beta1.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, + protos.google.cloud.domains.v1beta1.ISearchDomainsRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'location': request.location ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + location: request.location ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('searchDomains request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, - protos.google.cloud.domains.v1beta1.ISearchDomainsRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, + | protos.google.cloud.domains.v1beta1.ISearchDomainsRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('searchDomains response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.searchDomains(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, - protos.google.cloud.domains.v1beta1.ISearchDomainsRequest|undefined, - {}|undefined - ]) => { - this._log.info('searchDomains response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .searchDomains(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1beta1.ISearchDomainsResponse, + protos.google.cloud.domains.v1beta1.ISearchDomainsRequest | undefined, + {} | undefined, + ]) => { + this._log.info('searchDomains response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets parameters needed to register a new domain name, including price and - * up-to-date availability. Use the returned values to call `RegisterDomain`. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.domainName - * Required. The domain name. Unicode domain names must be expressed in Punycode format. - * @param {string} request.location - * Required. The location. Must be in the format `projects/* /locations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersResponse|RetrieveRegisterParametersResponse}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.retrieve_register_parameters.js - * region_tag:domains_v1beta1_generated_Domains_RetrieveRegisterParameters_async - */ + /** + * Gets parameters needed to register a new domain name, including price and + * up-to-date availability. Use the returned values to call `RegisterDomain`. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.domainName + * Required. The domain name. Unicode domain names must be expressed in Punycode format. + * @param {string} request.location + * Required. The location. Must be in the format `projects/* /locations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersResponse|RetrieveRegisterParametersResponse}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.retrieve_register_parameters.js + * region_tag:domains_v1beta1_generated_Domains_RetrieveRegisterParameters_async + */ retrieveRegisterParameters( - request?: protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, + ( + | protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest + | undefined + ), + {} | undefined, + ] + >; retrieveRegisterParameters( - request: protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveRegisterParameters( - request: protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest, - callback: Callback< - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest, + callback: Callback< + protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveRegisterParameters( - request?: protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest, - optionsOrCallback?: CallOptions|Callback< - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, + ( + | protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest + | undefined + ), + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'location': request.location ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + location: request.location ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('retrieveRegisterParameters request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, + | protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('retrieveRegisterParameters response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.retrieveRegisterParameters(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest|undefined, - {}|undefined - ]) => { - this._log.info('retrieveRegisterParameters response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .retrieveRegisterParameters(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse, + ( + | protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('retrieveRegisterParameters response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets parameters needed to transfer a domain name from another registrar to - * Cloud Domains. For domains managed by Google Domains, transferring to Cloud - * Domains is not supported. - * - * - * Use the returned values to call `TransferDomain`. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.domainName - * Required. The domain name. Unicode domain names must be expressed in Punycode format. - * @param {string} request.location - * Required. The location. Must be in the format `projects/* /locations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.RetrieveTransferParametersResponse|RetrieveTransferParametersResponse}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.retrieve_transfer_parameters.js - * region_tag:domains_v1beta1_generated_Domains_RetrieveTransferParameters_async - */ + /** + * Gets parameters needed to transfer a domain name from another registrar to + * Cloud Domains. For domains managed by Google Domains, transferring to Cloud + * Domains is not supported. + * + * + * Use the returned values to call `TransferDomain`. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.domainName + * Required. The domain name. Unicode domain names must be expressed in Punycode format. + * @param {string} request.location + * Required. The location. Must be in the format `projects/* /locations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.RetrieveTransferParametersResponse|RetrieveTransferParametersResponse}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.retrieve_transfer_parameters.js + * region_tag:domains_v1beta1_generated_Domains_RetrieveTransferParameters_async + */ retrieveTransferParameters( - request?: protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, + ( + | protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest + | undefined + ), + {} | undefined, + ] + >; retrieveTransferParameters( - request: protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveTransferParameters( - request: protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest, - callback: Callback< - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest, + callback: Callback< + protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveTransferParameters( - request?: protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, + ( + | protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest + | undefined + ), + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'location': request.location ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + location: request.location ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('retrieveTransferParameters request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, + | protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('retrieveTransferParameters response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.retrieveTransferParameters(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, - protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest|undefined, - {}|undefined - ]) => { - this._log.info('retrieveTransferParameters response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .retrieveTransferParameters(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse, + ( + | protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('retrieveTransferParameters response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets the details of a `Registration` resource. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The name of the `Registration` to get, in the format - * `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.Registration|Registration}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.get_registration.js - * region_tag:domains_v1beta1_generated_Domains_GetRegistration_async - */ + /** + * Gets the details of a `Registration` resource. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The name of the `Registration` to get, in the format + * `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.Registration|Registration}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.get_registration.js + * region_tag:domains_v1beta1_generated_Domains_GetRegistration_async + */ getRegistration( - request?: protos.google.cloud.domains.v1beta1.IGetRegistrationRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1beta1.IRegistration, - protos.google.cloud.domains.v1beta1.IGetRegistrationRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IGetRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IGetRegistrationRequest | undefined, + {} | undefined, + ] + >; getRegistration( - request: protos.google.cloud.domains.v1beta1.IGetRegistrationRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1beta1.IRegistration, - protos.google.cloud.domains.v1beta1.IGetRegistrationRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IGetRegistrationRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1beta1.IRegistration, + | protos.google.cloud.domains.v1beta1.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + >, + ): void; getRegistration( - request: protos.google.cloud.domains.v1beta1.IGetRegistrationRequest, - callback: Callback< - protos.google.cloud.domains.v1beta1.IRegistration, - protos.google.cloud.domains.v1beta1.IGetRegistrationRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IGetRegistrationRequest, + callback: Callback< + protos.google.cloud.domains.v1beta1.IRegistration, + | protos.google.cloud.domains.v1beta1.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + >, + ): void; getRegistration( - request?: protos.google.cloud.domains.v1beta1.IGetRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.google.cloud.domains.v1beta1.IGetRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1beta1.IRegistration, - protos.google.cloud.domains.v1beta1.IGetRegistrationRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.google.cloud.domains.v1beta1.IRegistration, - protos.google.cloud.domains.v1beta1.IGetRegistrationRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1beta1.IRegistration, - protos.google.cloud.domains.v1beta1.IGetRegistrationRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1beta1.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1beta1.IRegistration, + | protos.google.cloud.domains.v1beta1.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IGetRegistrationRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('getRegistration request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1beta1.IRegistration, - protos.google.cloud.domains.v1beta1.IGetRegistrationRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1beta1.IRegistration, + | protos.google.cloud.domains.v1beta1.IGetRegistrationRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('getRegistration response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.getRegistration(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1beta1.IRegistration, - protos.google.cloud.domains.v1beta1.IGetRegistrationRequest|undefined, - {}|undefined - ]) => { - this._log.info('getRegistration response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .getRegistration(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1beta1.IRegistration, + ( + | protos.google.cloud.domains.v1beta1.IGetRegistrationRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('getRegistration response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets the authorization code of the `Registration` for the purpose of - * transferring the domain to another registrar. - * - * You can call this method only after 60 days have elapsed since the initial - * domain registration. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose authorization code is being retrieved, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.AuthorizationCode|AuthorizationCode}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.retrieve_authorization_code.js - * region_tag:domains_v1beta1_generated_Domains_RetrieveAuthorizationCode_async - */ + /** + * Gets the authorization code of the `Registration` for the purpose of + * transferring the domain to another registrar. + * + * You can call this method only after 60 days have elapsed since the initial + * domain registration. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose authorization code is being retrieved, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.AuthorizationCode|AuthorizationCode}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.retrieve_authorization_code.js + * region_tag:domains_v1beta1_generated_Domains_RetrieveAuthorizationCode_async + */ retrieveAuthorizationCode( - request?: protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ] + >; retrieveAuthorizationCode( - request: protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + | protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveAuthorizationCode( - request: protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest, - callback: Callback< - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest, + callback: Callback< + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + | protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; retrieveAuthorizationCode( - request?: protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + | protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('retrieveAuthorizationCode request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + | protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('retrieveAuthorizationCode response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.retrieveAuthorizationCode(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest|undefined, - {}|undefined - ]) => { - this._log.info('retrieveAuthorizationCode response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .retrieveAuthorizationCode(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1beta1.IRetrieveAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('retrieveAuthorizationCode response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Resets the authorization code of the `Registration` to a new random string. - * - * You can call this method only after 60 days have elapsed since the initial - * domain registration. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose authorization code is being reset, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.AuthorizationCode|AuthorizationCode}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.reset_authorization_code.js - * region_tag:domains_v1beta1_generated_Domains_ResetAuthorizationCode_async - */ + /** + * Resets the authorization code of the `Registration` to a new random string. + * + * You can call this method only after 60 days have elapsed since the initial + * domain registration. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose authorization code is being reset, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.cloud.domains.v1beta1.AuthorizationCode|AuthorizationCode}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.reset_authorization_code.js + * region_tag:domains_v1beta1_generated_Domains_ResetAuthorizationCode_async + */ resetAuthorizationCode( - request?: protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ] + >; resetAuthorizationCode( - request: protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + | protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; resetAuthorizationCode( - request: protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest, - callback: Callback< - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest, + callback: Callback< + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + | protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): void; resetAuthorizationCode( - request?: protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest, - optionsOrCallback?: CallOptions|Callback< - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest|undefined, {}|undefined - ]>|void { + | protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + | protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('resetAuthorizationCode request %j', request); - const wrappedCallback: Callback< - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + | protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest + | null + | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('resetAuthorizationCode response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.resetAuthorizationCode(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.cloud.domains.v1beta1.IAuthorizationCode, - protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest|undefined, - {}|undefined - ]) => { - this._log.info('resetAuthorizationCode response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .resetAuthorizationCode(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.cloud.domains.v1beta1.IAuthorizationCode, + ( + | protos.google.cloud.domains.v1beta1.IResetAuthorizationCodeRequest + | undefined + ), + {} | undefined, + ]) => { + this._log.info('resetAuthorizationCode response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Registers a new domain name and creates a corresponding `Registration` - * resource. - * - * Call `RetrieveRegisterParameters` first to check availability of the domain - * name and determine parameters like price that are needed to build a call to - * this method. - * - * A successful call creates a `Registration` resource in state - * `REGISTRATION_PENDING`, which resolves to `ACTIVE` within 1-2 - * minutes, indicating that the domain was successfully registered. If the - * resource ends up in state `REGISTRATION_FAILED`, it indicates that the - * domain was not registered successfully, and you can safely delete the - * resource and retry registration. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The parent resource of the `Registration`. Must be in the - * format `projects/* /locations/*`. - * @param {google.cloud.domains.v1beta1.Registration} request.registration - * Required. The complete `Registration` resource to be created. - * @param {number[]} request.domainNotices - * The list of domain notices that you acknowledge. Call - * `RetrieveRegisterParameters` to see the notices that need acknowledgement. - * @param {number[]} request.contactNotices - * The list of contact notices that the caller acknowledges. The notices - * needed here depend on the values specified in - * `registration.contact_settings`. - * @param {google.type.Money} request.yearlyPrice - * Required. Yearly price to register or renew the domain. - * The value that should be put here can be obtained from - * RetrieveRegisterParameters or SearchDomains calls. - * @param {boolean} request.validateOnly - * When true, only validation is performed, without actually registering - * the domain. Follows: - * https://cloud.google.com/apis/design/design_patterns#request_validation - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.register_domain.js - * region_tag:domains_v1beta1_generated_Domains_RegisterDomain_async - */ + /** + * Registers a new domain name and creates a corresponding `Registration` + * resource. + * + * Call `RetrieveRegisterParameters` first to check availability of the domain + * name and determine parameters like price that are needed to build a call to + * this method. + * + * A successful call creates a `Registration` resource in state + * `REGISTRATION_PENDING`, which resolves to `ACTIVE` within 1-2 + * minutes, indicating that the domain was successfully registered. If the + * resource ends up in state `REGISTRATION_FAILED`, it indicates that the + * domain was not registered successfully, and you can safely delete the + * resource and retry registration. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent resource of the `Registration`. Must be in the + * format `projects/* /locations/*`. + * @param {google.cloud.domains.v1beta1.Registration} request.registration + * Required. The complete `Registration` resource to be created. + * @param {number[]} request.domainNotices + * The list of domain notices that you acknowledge. Call + * `RetrieveRegisterParameters` to see the notices that need acknowledgement. + * @param {number[]} request.contactNotices + * The list of contact notices that the caller acknowledges. The notices + * needed here depend on the values specified in + * `registration.contact_settings`. + * @param {google.type.Money} request.yearlyPrice + * Required. Yearly price to register or renew the domain. + * The value that should be put here can be obtained from + * RetrieveRegisterParameters or SearchDomains calls. + * @param {boolean} request.validateOnly + * When true, only validation is performed, without actually registering + * the domain. Follows: + * https://cloud.google.com/apis/design/design_patterns#request_validation + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.register_domain.js + * region_tag:domains_v1beta1_generated_Domains_RegisterDomain_async + */ registerDomain( - request?: protos.google.cloud.domains.v1beta1.IRegisterDomainRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IRegisterDomainRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; registerDomain( - request: protos.google.cloud.domains.v1beta1.IRegisterDomainRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IRegisterDomainRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; registerDomain( - request: protos.google.cloud.domains.v1beta1.IRegisterDomainRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IRegisterDomainRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; registerDomain( - request?: protos.google.cloud.domains.v1beta1.IRegisterDomainRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1beta1.IRegisterDomainRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('registerDomain response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('registerDomain request %j', request); - return this.innerApiCalls.registerDomain(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('registerDomain response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .registerDomain(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('registerDomain response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `registerDomain()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.register_domain.js - * region_tag:domains_v1beta1_generated_Domains_RegisterDomain_async - */ - async checkRegisterDomainProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `registerDomain()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.register_domain.js + * region_tag:domains_v1beta1_generated_Domains_RegisterDomain_async + */ + async checkRegisterDomainProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + > + > { this._log.info('registerDomain long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.registerDomain, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.registerDomain, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + >; } -/** - * Transfers a domain name from another registrar to Cloud Domains. For - * domains managed by Google Domains, transferring to Cloud Domains is not - * supported. - * - * - * Before calling this method, go to the domain's current registrar to unlock - * the domain for transfer and retrieve the domain's transfer authorization - * code. Then call `RetrieveTransferParameters` to confirm that the domain is - * unlocked and to get values needed to build a call to this method. - * - * A successful call creates a `Registration` resource in state - * `TRANSFER_PENDING`. It can take several days to complete the transfer - * process. The registrant can often speed up this process by approving the - * transfer through the current registrar, either by clicking a link in an - * email from the registrar or by visiting the registrar's website. - * - * A few minutes after transfer approval, the resource transitions to state - * `ACTIVE`, indicating that the transfer was successful. If the transfer is - * rejected or the request expires without being approved, the resource can - * end up in state `TRANSFER_FAILED`. If transfer fails, you can safely delete - * the resource and retry the transfer. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The parent resource of the `Registration`. Must be in the - * format `projects/* /locations/*`. - * @param {google.cloud.domains.v1beta1.Registration} request.registration - * Required. The complete `Registration` resource to be created. - * - * You can leave `registration.dns_settings` unset to import the - * domain's current DNS configuration from its current registrar. Use this - * option only if you are sure that the domain's current DNS service - * does not cease upon transfer, as is often the case for DNS services - * provided for free by the registrar. - * @param {number[]} request.contactNotices - * The list of contact notices that you acknowledge. The notices - * needed here depend on the values specified in - * `registration.contact_settings`. - * @param {google.type.Money} request.yearlyPrice - * Required. Acknowledgement of the price to transfer or renew the domain for one year. - * Call `RetrieveTransferParameters` to obtain the price, which you must - * acknowledge. - * @param {google.cloud.domains.v1beta1.AuthorizationCode} request.authorizationCode - * The domain's transfer authorization code. You can obtain this from the - * domain's current registrar. - * @param {boolean} request.validateOnly - * Validate the request without actually transferring the domain. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.transfer_domain.js - * region_tag:domains_v1beta1_generated_Domains_TransferDomain_async - */ + /** + * Transfers a domain name from another registrar to Cloud Domains. For + * domains managed by Google Domains, transferring to Cloud Domains is not + * supported. + * + * + * Before calling this method, go to the domain's current registrar to unlock + * the domain for transfer and retrieve the domain's transfer authorization + * code. Then call `RetrieveTransferParameters` to confirm that the domain is + * unlocked and to get values needed to build a call to this method. + * + * A successful call creates a `Registration` resource in state + * `TRANSFER_PENDING`. It can take several days to complete the transfer + * process. The registrant can often speed up this process by approving the + * transfer through the current registrar, either by clicking a link in an + * email from the registrar or by visiting the registrar's website. + * + * A few minutes after transfer approval, the resource transitions to state + * `ACTIVE`, indicating that the transfer was successful. If the transfer is + * rejected or the request expires without being approved, the resource can + * end up in state `TRANSFER_FAILED`. If transfer fails, you can safely delete + * the resource and retry the transfer. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent resource of the `Registration`. Must be in the + * format `projects/* /locations/*`. + * @param {google.cloud.domains.v1beta1.Registration} request.registration + * Required. The complete `Registration` resource to be created. + * + * You can leave `registration.dns_settings` unset to import the + * domain's current DNS configuration from its current registrar. Use this + * option only if you are sure that the domain's current DNS service + * does not cease upon transfer, as is often the case for DNS services + * provided for free by the registrar. + * @param {number[]} request.contactNotices + * The list of contact notices that you acknowledge. The notices + * needed here depend on the values specified in + * `registration.contact_settings`. + * @param {google.type.Money} request.yearlyPrice + * Required. Acknowledgement of the price to transfer or renew the domain for one year. + * Call `RetrieveTransferParameters` to obtain the price, which you must + * acknowledge. + * @param {google.cloud.domains.v1beta1.AuthorizationCode} request.authorizationCode + * The domain's transfer authorization code. You can obtain this from the + * domain's current registrar. + * @param {boolean} request.validateOnly + * Validate the request without actually transferring the domain. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.transfer_domain.js + * region_tag:domains_v1beta1_generated_Domains_TransferDomain_async + */ transferDomain( - request?: protos.google.cloud.domains.v1beta1.ITransferDomainRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.ITransferDomainRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; transferDomain( - request: protos.google.cloud.domains.v1beta1.ITransferDomainRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.ITransferDomainRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; transferDomain( - request: protos.google.cloud.domains.v1beta1.ITransferDomainRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.ITransferDomainRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; transferDomain( - request?: protos.google.cloud.domains.v1beta1.ITransferDomainRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1beta1.ITransferDomainRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('transferDomain response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('transferDomain request %j', request); - return this.innerApiCalls.transferDomain(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('transferDomain response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .transferDomain(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('transferDomain response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `transferDomain()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.transfer_domain.js - * region_tag:domains_v1beta1_generated_Domains_TransferDomain_async - */ - async checkTransferDomainProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `transferDomain()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.transfer_domain.js + * region_tag:domains_v1beta1_generated_Domains_TransferDomain_async + */ + async checkTransferDomainProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + > + > { this._log.info('transferDomain long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.transferDomain, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.transferDomain, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + >; } -/** - * Updates select fields of a `Registration` resource, notably `labels`. To - * update other fields, use the appropriate custom update method: - * - * * To update management settings, see `ConfigureManagementSettings` - * * To update DNS configuration, see `ConfigureDnsSettings` - * * To update contact information, see `ConfigureContactSettings` - * - * @param {Object} request - * The request object that will be sent. - * @param {google.cloud.domains.v1beta1.Registration} request.registration - * Fields of the `Registration` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the labels are being updated, the `update_mask` is - * `"labels"`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.update_registration.js - * region_tag:domains_v1beta1_generated_Domains_UpdateRegistration_async - */ + /** + * Updates select fields of a `Registration` resource, notably `labels`. To + * update other fields, use the appropriate custom update method: + * + * * To update management settings, see `ConfigureManagementSettings` + * * To update DNS configuration, see `ConfigureDnsSettings` + * * To update contact information, see `ConfigureContactSettings` + * + * @param {Object} request + * The request object that will be sent. + * @param {google.cloud.domains.v1beta1.Registration} request.registration + * Fields of the `Registration` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the labels are being updated, the `update_mask` is + * `"labels"`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.update_registration.js + * region_tag:domains_v1beta1_generated_Domains_UpdateRegistration_async + */ updateRegistration( - request?: protos.google.cloud.domains.v1beta1.IUpdateRegistrationRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IUpdateRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; updateRegistration( - request: protos.google.cloud.domains.v1beta1.IUpdateRegistrationRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IUpdateRegistrationRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; updateRegistration( - request: protos.google.cloud.domains.v1beta1.IUpdateRegistrationRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IUpdateRegistrationRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; updateRegistration( - request?: protos.google.cloud.domains.v1beta1.IUpdateRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1beta1.IUpdateRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration.name': request.registration!.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + 'registration.name': request.registration!.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('updateRegistration response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('updateRegistration request %j', request); - return this.innerApiCalls.updateRegistration(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('updateRegistration response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .updateRegistration(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('updateRegistration response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `updateRegistration()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.update_registration.js - * region_tag:domains_v1beta1_generated_Domains_UpdateRegistration_async - */ - async checkUpdateRegistrationProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `updateRegistration()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.update_registration.js + * region_tag:domains_v1beta1_generated_Domains_UpdateRegistration_async + */ + async checkUpdateRegistrationProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + > + > { this._log.info('updateRegistration long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.updateRegistration, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.updateRegistration, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + >; } -/** - * Updates a `Registration`'s management settings. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose management settings are being updated, - * in the format `projects/* /locations/* /registrations/*`. - * @param {google.cloud.domains.v1beta1.ManagementSettings} request.managementSettings - * Fields of the `ManagementSettings` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the transfer lock is being updated, the `update_mask` - * is `"transfer_lock_state"`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.configure_management_settings.js - * region_tag:domains_v1beta1_generated_Domains_ConfigureManagementSettings_async - */ + /** + * Updates a `Registration`'s management settings. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose management settings are being updated, + * in the format `projects/* /locations/* /registrations/*`. + * @param {google.cloud.domains.v1beta1.ManagementSettings} request.managementSettings + * Fields of the `ManagementSettings` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the transfer lock is being updated, the `update_mask` + * is `"transfer_lock_state"`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.configure_management_settings.js + * region_tag:domains_v1beta1_generated_Domains_ConfigureManagementSettings_async + */ configureManagementSettings( - request?: protos.google.cloud.domains.v1beta1.IConfigureManagementSettingsRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IConfigureManagementSettingsRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; configureManagementSettings( - request: protos.google.cloud.domains.v1beta1.IConfigureManagementSettingsRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IConfigureManagementSettingsRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureManagementSettings( - request: protos.google.cloud.domains.v1beta1.IConfigureManagementSettingsRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IConfigureManagementSettingsRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureManagementSettings( - request?: protos.google.cloud.domains.v1beta1.IConfigureManagementSettingsRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1beta1.IConfigureManagementSettingsRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { - this._log.info('configureManagementSettings response %j', rawResponse); + this._log.info( + 'configureManagementSettings response %j', + rawResponse, + ); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('configureManagementSettings request %j', request); - return this.innerApiCalls.configureManagementSettings(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('configureManagementSettings response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .configureManagementSettings(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info( + 'configureManagementSettings response %j', + rawResponse, + ); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `configureManagementSettings()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.configure_management_settings.js - * region_tag:domains_v1beta1_generated_Domains_ConfigureManagementSettings_async - */ - async checkConfigureManagementSettingsProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `configureManagementSettings()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.configure_management_settings.js + * region_tag:domains_v1beta1_generated_Domains_ConfigureManagementSettings_async + */ + async checkConfigureManagementSettingsProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + > + > { this._log.info('configureManagementSettings long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.configureManagementSettings, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.configureManagementSettings, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + >; } -/** - * Updates a `Registration`'s DNS settings. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose DNS settings are being updated, - * in the format `projects/* /locations/* /registrations/*`. - * @param {google.cloud.domains.v1beta1.DnsSettings} request.dnsSettings - * Fields of the `DnsSettings` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the name servers are being updated for an existing - * Custom DNS configuration, the `update_mask` is - * `"custom_dns.name_servers"`. - * - * When changing the DNS provider from one type to another, pass the new - * provider's field name as part of the field mask. For example, when changing - * from a Google Domains DNS configuration to a Custom DNS configuration, the - * `update_mask` is `"custom_dns"`. // - * @param {boolean} request.validateOnly - * Validate the request without actually updating the DNS settings. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.configure_dns_settings.js - * region_tag:domains_v1beta1_generated_Domains_ConfigureDnsSettings_async - */ + /** + * Updates a `Registration`'s DNS settings. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose DNS settings are being updated, + * in the format `projects/* /locations/* /registrations/*`. + * @param {google.cloud.domains.v1beta1.DnsSettings} request.dnsSettings + * Fields of the `DnsSettings` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the name servers are being updated for an existing + * Custom DNS configuration, the `update_mask` is + * `"custom_dns.name_servers"`. + * + * When changing the DNS provider from one type to another, pass the new + * provider's field name as part of the field mask. For example, when changing + * from a Google Domains DNS configuration to a Custom DNS configuration, the + * `update_mask` is `"custom_dns"`. // + * @param {boolean} request.validateOnly + * Validate the request without actually updating the DNS settings. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.configure_dns_settings.js + * region_tag:domains_v1beta1_generated_Domains_ConfigureDnsSettings_async + */ configureDnsSettings( - request?: protos.google.cloud.domains.v1beta1.IConfigureDnsSettingsRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IConfigureDnsSettingsRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; configureDnsSettings( - request: protos.google.cloud.domains.v1beta1.IConfigureDnsSettingsRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IConfigureDnsSettingsRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureDnsSettings( - request: protos.google.cloud.domains.v1beta1.IConfigureDnsSettingsRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IConfigureDnsSettingsRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureDnsSettings( - request?: protos.google.cloud.domains.v1beta1.IConfigureDnsSettingsRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1beta1.IConfigureDnsSettingsRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('configureDnsSettings response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('configureDnsSettings request %j', request); - return this.innerApiCalls.configureDnsSettings(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('configureDnsSettings response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .configureDnsSettings(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('configureDnsSettings response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `configureDnsSettings()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.configure_dns_settings.js - * region_tag:domains_v1beta1_generated_Domains_ConfigureDnsSettings_async - */ - async checkConfigureDnsSettingsProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `configureDnsSettings()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.configure_dns_settings.js + * region_tag:domains_v1beta1_generated_Domains_ConfigureDnsSettings_async + */ + async checkConfigureDnsSettingsProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + > + > { this._log.info('configureDnsSettings long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.configureDnsSettings, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.configureDnsSettings, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + >; } -/** - * Updates a `Registration`'s contact settings. Some changes require - * confirmation by the domain's registrant contact . - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.registration - * Required. The name of the `Registration` whose contact settings are being updated, - * in the format `projects/* /locations/* /registrations/*`. - * @param {google.cloud.domains.v1beta1.ContactSettings} request.contactSettings - * Fields of the `ContactSettings` to update. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. The field mask describing which fields to update as a comma-separated list. - * For example, if only the registrant contact is being updated, the - * `update_mask` is `"registrant_contact"`. - * @param {number[]} request.contactNotices - * The list of contact notices that the caller acknowledges. The notices - * needed here depend on the values specified in `contact_settings`. - * @param {boolean} request.validateOnly - * Validate the request without actually updating the contact settings. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.configure_contact_settings.js - * region_tag:domains_v1beta1_generated_Domains_ConfigureContactSettings_async - */ + /** + * Updates a `Registration`'s contact settings. Some changes require + * confirmation by the domain's registrant contact . + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.registration + * Required. The name of the `Registration` whose contact settings are being updated, + * in the format `projects/* /locations/* /registrations/*`. + * @param {google.cloud.domains.v1beta1.ContactSettings} request.contactSettings + * Fields of the `ContactSettings` to update. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. The field mask describing which fields to update as a comma-separated list. + * For example, if only the registrant contact is being updated, the + * `update_mask` is `"registrant_contact"`. + * @param {number[]} request.contactNotices + * The list of contact notices that the caller acknowledges. The notices + * needed here depend on the values specified in `contact_settings`. + * @param {boolean} request.validateOnly + * Validate the request without actually updating the contact settings. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.configure_contact_settings.js + * region_tag:domains_v1beta1_generated_Domains_ConfigureContactSettings_async + */ configureContactSettings( - request?: protos.google.cloud.domains.v1beta1.IConfigureContactSettingsRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IConfigureContactSettingsRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; configureContactSettings( - request: protos.google.cloud.domains.v1beta1.IConfigureContactSettingsRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IConfigureContactSettingsRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureContactSettings( - request: protos.google.cloud.domains.v1beta1.IConfigureContactSettingsRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IConfigureContactSettingsRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; configureContactSettings( - request?: protos.google.cloud.domains.v1beta1.IConfigureContactSettingsRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1beta1.IConfigureContactSettingsRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'registration': request.registration ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + registration: request.registration ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('configureContactSettings response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('configureContactSettings request %j', request); - return this.innerApiCalls.configureContactSettings(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('configureContactSettings response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .configureContactSettings(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('configureContactSettings response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `configureContactSettings()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.configure_contact_settings.js - * region_tag:domains_v1beta1_generated_Domains_ConfigureContactSettings_async - */ - async checkConfigureContactSettingsProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `configureContactSettings()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.configure_contact_settings.js + * region_tag:domains_v1beta1_generated_Domains_ConfigureContactSettings_async + */ + async checkConfigureContactSettingsProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + > + > { this._log.info('configureContactSettings long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.configureContactSettings, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.configureContactSettings, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + >; } -/** - * Exports a `Registration` resource, such that it is no longer managed by - * Cloud Domains. - * - * When an active domain is successfully exported, you can continue to use the - * domain in [Google Domains](https://domains.google/) until it expires. The - * calling user becomes the domain's sole owner in Google Domains, and - * permissions for the domain are subsequently managed there. The domain does - * not renew automatically unless the new owner sets up billing in Google - * Domains. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The name of the `Registration` to export, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.export_registration.js - * region_tag:domains_v1beta1_generated_Domains_ExportRegistration_async - */ + /** + * Exports a `Registration` resource, such that it is no longer managed by + * Cloud Domains. + * + * When an active domain is successfully exported, you can continue to use the + * domain in [Google Domains](https://domains.google/) until it expires. The + * calling user becomes the domain's sole owner in Google Domains, and + * permissions for the domain are subsequently managed there. The domain does + * not renew automatically unless the new owner sets up billing in Google + * Domains. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The name of the `Registration` to export, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.export_registration.js + * region_tag:domains_v1beta1_generated_Domains_ExportRegistration_async + */ exportRegistration( - request?: protos.google.cloud.domains.v1beta1.IExportRegistrationRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IExportRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; exportRegistration( - request: protos.google.cloud.domains.v1beta1.IExportRegistrationRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IExportRegistrationRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; exportRegistration( - request: protos.google.cloud.domains.v1beta1.IExportRegistrationRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IExportRegistrationRequest, + callback: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; exportRegistration( - request?: protos.google.cloud.domains.v1beta1.IExportRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1beta1.IExportRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('exportRegistration response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('exportRegistration request %j', request); - return this.innerApiCalls.exportRegistration(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('exportRegistration response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .exportRegistration(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('exportRegistration response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `exportRegistration()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.export_registration.js - * region_tag:domains_v1beta1_generated_Domains_ExportRegistration_async - */ - async checkExportRegistrationProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `exportRegistration()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.export_registration.js + * region_tag:domains_v1beta1_generated_Domains_ExportRegistration_async + */ + async checkExportRegistrationProgress( + name: string, + ): Promise< + LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + > + > { this._log.info('exportRegistration long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.exportRegistration, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.exportRegistration, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.cloud.domains.v1beta1.Registration, + protos.google.cloud.domains.v1beta1.OperationMetadata + >; } -/** - * Deletes a `Registration` resource. - * - * This method works on any `Registration` resource using [Subscription or - * Commitment billing](/domains/pricing#billing-models), provided that the - * resource was created at least 1 day in the past. - * - * For `Registration` resources using - * [Monthly billing](/domains/pricing#billing-models), this method works if: - * - * * `state` is `EXPORTED` with `expire_time` in the past - * * `state` is `REGISTRATION_FAILED` - * * `state` is `TRANSFER_FAILED` - * - * When an active registration is successfully deleted, you can continue to - * use the domain in [Google Domains](https://domains.google/) until it - * expires. The calling user becomes the domain's sole owner in Google - * Domains, and permissions for the domain are subsequently managed there. The - * domain does not renew automatically unless the new owner sets up billing in - * Google Domains. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The name of the `Registration` to delete, - * in the format `projects/* /locations/* /registrations/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.delete_registration.js - * region_tag:domains_v1beta1_generated_Domains_DeleteRegistration_async - */ + /** + * Deletes a `Registration` resource. + * + * This method works on any `Registration` resource using [Subscription or + * Commitment billing](/domains/pricing#billing-models), provided that the + * resource was created at least 1 day in the past. + * + * For `Registration` resources using + * [Monthly billing](/domains/pricing#billing-models), this method works if: + * + * * `state` is `EXPORTED` with `expire_time` in the past + * * `state` is `REGISTRATION_FAILED` + * * `state` is `TRANSFER_FAILED` + * + * When an active registration is successfully deleted, you can continue to + * use the domain in [Google Domains](https://domains.google/) until it + * expires. The calling user becomes the domain's sole owner in Google + * Domains, and permissions for the domain are subsequently managed there. The + * domain does not renew automatically unless the new owner sets up billing in + * Google Domains. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The name of the `Registration` to delete, + * in the format `projects/* /locations/* /registrations/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.delete_registration.js + * region_tag:domains_v1beta1_generated_Domains_DeleteRegistration_async + */ deleteRegistration( - request?: protos.google.cloud.domains.v1beta1.IDeleteRegistrationRequest, - options?: CallOptions): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>; + request?: protos.google.cloud.domains.v1beta1.IDeleteRegistrationRequest, + options?: CallOptions, + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + >; deleteRegistration( - request: protos.google.cloud.domains.v1beta1.IDeleteRegistrationRequest, - options: CallOptions, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IDeleteRegistrationRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; deleteRegistration( - request: protos.google.cloud.domains.v1beta1.IDeleteRegistrationRequest, - callback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): void; + request: protos.google.cloud.domains.v1beta1.IDeleteRegistrationRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): void; deleteRegistration( - request?: protos.google.cloud.domains.v1beta1.IDeleteRegistrationRequest, - optionsOrCallback?: CallOptions|Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>, - callback?: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>): - Promise<[ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]>|void { + request?: protos.google.cloud.domains.v1beta1.IDeleteRegistrationRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: Callback< - LROperation, - protos.google.longrunning.IOperation|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, rawResponse, _) => { this._log.info('deleteRegistration response %j', rawResponse); callback!(error, response, rawResponse, _); // We verified callback above. } : undefined; this._log.info('deleteRegistration request %j', request); - return this.innerApiCalls.deleteRegistration(request, options, wrappedCallback) - ?.then(([response, rawResponse, _]: [ - LROperation, - protos.google.longrunning.IOperation|undefined, {}|undefined - ]) => { - this._log.info('deleteRegistration response %j', rawResponse); - return [response, rawResponse, _]; - }); + return this.innerApiCalls + .deleteRegistration(request, options, wrappedCallback) + ?.then( + ([response, rawResponse, _]: [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined, + ]) => { + this._log.info('deleteRegistration response %j', rawResponse); + return [response, rawResponse, _]; + }, + ); } -/** - * Check the status of the long running operation returned by `deleteRegistration()`. - * @param {String} name - * The operation name that will be passed. - * @returns {Promise} - The promise which resolves to an object. - * The decoded operation object has result and metadata field to get information from. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.delete_registration.js - * region_tag:domains_v1beta1_generated_Domains_DeleteRegistration_async - */ - async checkDeleteRegistrationProgress(name: string): Promise>{ + /** + * Check the status of the long running operation returned by `deleteRegistration()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.delete_registration.js + * region_tag:domains_v1beta1_generated_Domains_DeleteRegistration_async + */ + async checkDeleteRegistrationProgress( + name: string, + ): Promise< + LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.domains.v1beta1.OperationMetadata + > + > { this._log.info('deleteRegistration long-running'); - const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({name}); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + { name }, + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.deleteRegistration, this._gaxModule.createDefaultBackoffSettings()); - return decodeOperation as LROperation; + const decodeOperation = new this._gaxModule.Operation( + operation, + this.descriptors.longrunning.deleteRegistration, + this._gaxModule.createDefaultBackoffSettings(), + ); + return decodeOperation as LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.domains.v1beta1.OperationMetadata + >; } - /** - * Lists the `Registration` resources in a project. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The project and location from which to list `Registration`s, specified in - * the format `projects/* /locations/*`. - * @param {number} request.pageSize - * Maximum number of results to return. - * @param {string} request.pageToken - * When set to the `next_page_token` from a prior response, provides the next - * page of results. - * @param {string} request.filter - * Filter expression to restrict the `Registration`s returned. - * - * The expression must specify the field name, a comparison operator, and the - * value that you want to use for filtering. The value must be a string, a - * number, a boolean, or an enum value. The comparison operator should be one - * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. - * - * For example, to filter to a specific domain name, use an expression like - * `domainName="example.com"`. You can also check for the existence of a - * field; for example, to find domains using custom DNS settings, use an - * expression like `dnsSettings.customDns:*`. - * - * You can also create compound filters by combining expressions with the - * `AND` and `OR` operators. For example, to find domains that are suspended - * or have specific issues flagged, use an expression like - * `(state=SUSPENDED) OR (issue:*)`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is Array of {@link protos.google.cloud.domains.v1beta1.Registration|Registration}. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed and will merge results from all the pages into this array. - * Note that it can affect your quota. - * We recommend using `listRegistrationsAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Lists the `Registration` resources in a project. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The project and location from which to list `Registration`s, specified in + * the format `projects/* /locations/*`. + * @param {number} request.pageSize + * Maximum number of results to return. + * @param {string} request.pageToken + * When set to the `next_page_token` from a prior response, provides the next + * page of results. + * @param {string} request.filter + * Filter expression to restrict the `Registration`s returned. + * + * The expression must specify the field name, a comparison operator, and the + * value that you want to use for filtering. The value must be a string, a + * number, a boolean, or an enum value. The comparison operator should be one + * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. + * + * For example, to filter to a specific domain name, use an expression like + * `domainName="example.com"`. You can also check for the existence of a + * field; for example, to find domains using custom DNS settings, use an + * expression like `dnsSettings.customDns:*`. + * + * You can also create compound filters by combining expressions with the + * `AND` and `OR` operators. For example, to find domains that are suspended + * or have specific issues flagged, use an expression like + * `(state=SUSPENDED) OR (issue:*)`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of {@link protos.google.cloud.domains.v1beta1.Registration|Registration}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listRegistrationsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listRegistrations( - request?: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, - options?: CallOptions): - Promise<[ - protos.google.cloud.domains.v1beta1.IRegistration[], - protos.google.cloud.domains.v1beta1.IListRegistrationsRequest|null, - protos.google.cloud.domains.v1beta1.IListRegistrationsResponse - ]>; + request?: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IRegistration[], + protos.google.cloud.domains.v1beta1.IListRegistrationsRequest | null, + protos.google.cloud.domains.v1beta1.IListRegistrationsResponse, + ] + >; listRegistrations( - request: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, - options: CallOptions, - callback: PaginationCallback< - protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, - protos.google.cloud.domains.v1beta1.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1beta1.IRegistration>): void; + request: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, + | protos.google.cloud.domains.v1beta1.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1beta1.IRegistration + >, + ): void; listRegistrations( - request: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, - callback: PaginationCallback< - protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, - protos.google.cloud.domains.v1beta1.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1beta1.IRegistration>): void; + request: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, + callback: PaginationCallback< + protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, + | protos.google.cloud.domains.v1beta1.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1beta1.IRegistration + >, + ): void; listRegistrations( - request?: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, - optionsOrCallback?: CallOptions|PaginationCallback< - protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, - protos.google.cloud.domains.v1beta1.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1beta1.IRegistration>, - callback?: PaginationCallback< + request?: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, - protos.google.cloud.domains.v1beta1.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1beta1.IRegistration>): - Promise<[ - protos.google.cloud.domains.v1beta1.IRegistration[], - protos.google.cloud.domains.v1beta1.IListRegistrationsRequest|null, - protos.google.cloud.domains.v1beta1.IListRegistrationsResponse - ]>|void { + | protos.google.cloud.domains.v1beta1.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1beta1.IRegistration + >, + callback?: PaginationCallback< + protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, + | protos.google.cloud.domains.v1beta1.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1beta1.IRegistration + >, + ): Promise< + [ + protos.google.cloud.domains.v1beta1.IRegistration[], + protos.google.cloud.domains.v1beta1.IListRegistrationsRequest | null, + protos.google.cloud.domains.v1beta1.IListRegistrationsResponse, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: PaginationCallback< - protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, - protos.google.cloud.domains.v1beta1.IListRegistrationsResponse|null|undefined, - protos.google.cloud.domains.v1beta1.IRegistration>|undefined = callback + const wrappedCallback: + | PaginationCallback< + protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, + | protos.google.cloud.domains.v1beta1.IListRegistrationsResponse + | null + | undefined, + protos.google.cloud.domains.v1beta1.IRegistration + > + | undefined = callback ? (error, values, nextPageRequest, rawResponse) => { this._log.info('listRegistrations values %j', values); callback!(error, values, nextPageRequest, rawResponse); // We verified callback above. @@ -2121,144 +3057,148 @@ export class DomainsClient { this._log.info('listRegistrations request %j', request); return this.innerApiCalls .listRegistrations(request, options, wrappedCallback) - ?.then(([response, input, output]: [ - protos.google.cloud.domains.v1beta1.IRegistration[], - protos.google.cloud.domains.v1beta1.IListRegistrationsRequest|null, - protos.google.cloud.domains.v1beta1.IListRegistrationsResponse - ]) => { - this._log.info('listRegistrations values %j', response); - return [response, input, output]; - }); + ?.then( + ([response, input, output]: [ + protos.google.cloud.domains.v1beta1.IRegistration[], + protos.google.cloud.domains.v1beta1.IListRegistrationsRequest | null, + protos.google.cloud.domains.v1beta1.IListRegistrationsResponse, + ]) => { + this._log.info('listRegistrations values %j', response); + return [response, input, output]; + }, + ); } -/** - * Equivalent to `listRegistrations`, but returns a NodeJS Stream object. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The project and location from which to list `Registration`s, specified in - * the format `projects/* /locations/*`. - * @param {number} request.pageSize - * Maximum number of results to return. - * @param {string} request.pageToken - * When set to the `next_page_token` from a prior response, provides the next - * page of results. - * @param {string} request.filter - * Filter expression to restrict the `Registration`s returned. - * - * The expression must specify the field name, a comparison operator, and the - * value that you want to use for filtering. The value must be a string, a - * number, a boolean, or an enum value. The comparison operator should be one - * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. - * - * For example, to filter to a specific domain name, use an expression like - * `domainName="example.com"`. You can also check for the existence of a - * field; for example, to find domains using custom DNS settings, use an - * expression like `dnsSettings.customDns:*`. - * - * You can also create compound filters by combining expressions with the - * `AND` and `OR` operators. For example, to find domains that are suspended - * or have specific issues flagged, use an expression like - * `(state=SUSPENDED) OR (issue:*)`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Stream} - * An object stream which emits an object representing {@link protos.google.cloud.domains.v1beta1.Registration|Registration} on 'data' event. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed. Note that it can affect your quota. - * We recommend using `listRegistrationsAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Equivalent to `listRegistrations`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The project and location from which to list `Registration`s, specified in + * the format `projects/* /locations/*`. + * @param {number} request.pageSize + * Maximum number of results to return. + * @param {string} request.pageToken + * When set to the `next_page_token` from a prior response, provides the next + * page of results. + * @param {string} request.filter + * Filter expression to restrict the `Registration`s returned. + * + * The expression must specify the field name, a comparison operator, and the + * value that you want to use for filtering. The value must be a string, a + * number, a boolean, or an enum value. The comparison operator should be one + * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. + * + * For example, to filter to a specific domain name, use an expression like + * `domainName="example.com"`. You can also check for the existence of a + * field; for example, to find domains using custom DNS settings, use an + * expression like `dnsSettings.customDns:*`. + * + * You can also create compound filters by combining expressions with the + * `AND` and `OR` operators. For example, to find domains that are suspended + * or have specific issues flagged, use an expression like + * `(state=SUSPENDED) OR (issue:*)`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing {@link protos.google.cloud.domains.v1beta1.Registration|Registration} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listRegistrationsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listRegistrationsStream( - request?: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, - options?: CallOptions): - Transform{ + request?: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, + options?: CallOptions, + ): Transform { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); const defaultCallSettings = this._defaults['listRegistrations']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listRegistrations stream %j', request); return this.descriptors.page.listRegistrations.createStream( this.innerApiCalls.listRegistrations as GaxCall, request, - callSettings + callSettings, ); } -/** - * Equivalent to `listRegistrations`, but returns an iterable object. - * - * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The project and location from which to list `Registration`s, specified in - * the format `projects/* /locations/*`. - * @param {number} request.pageSize - * Maximum number of results to return. - * @param {string} request.pageToken - * When set to the `next_page_token` from a prior response, provides the next - * page of results. - * @param {string} request.filter - * Filter expression to restrict the `Registration`s returned. - * - * The expression must specify the field name, a comparison operator, and the - * value that you want to use for filtering. The value must be a string, a - * number, a boolean, or an enum value. The comparison operator should be one - * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. - * - * For example, to filter to a specific domain name, use an expression like - * `domainName="example.com"`. You can also check for the existence of a - * field; for example, to find domains using custom DNS settings, use an - * expression like `dnsSettings.customDns:*`. - * - * You can also create compound filters by combining expressions with the - * `AND` and `OR` operators. For example, to find domains that are suspended - * or have specific issues flagged, use an expression like - * `(state=SUSPENDED) OR (issue:*)`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Object} - * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. - * When you iterate the returned iterable, each element will be an object representing - * {@link protos.google.cloud.domains.v1beta1.Registration|Registration}. The API will be called under the hood as needed, once per the page, - * so you can stop the iteration when you don't need more results. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - * @example include:samples/generated/v1beta1/domains.list_registrations.js - * region_tag:domains_v1beta1_generated_Domains_ListRegistrations_async - */ + /** + * Equivalent to `listRegistrations`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The project and location from which to list `Registration`s, specified in + * the format `projects/* /locations/*`. + * @param {number} request.pageSize + * Maximum number of results to return. + * @param {string} request.pageToken + * When set to the `next_page_token` from a prior response, provides the next + * page of results. + * @param {string} request.filter + * Filter expression to restrict the `Registration`s returned. + * + * The expression must specify the field name, a comparison operator, and the + * value that you want to use for filtering. The value must be a string, a + * number, a boolean, or an enum value. The comparison operator should be one + * of =, !=, >, <, >=, <=, or : for prefix or wildcard matches. + * + * For example, to filter to a specific domain name, use an expression like + * `domainName="example.com"`. You can also check for the existence of a + * field; for example, to find domains using custom DNS settings, use an + * expression like `dnsSettings.customDns:*`. + * + * You can also create compound filters by combining expressions with the + * `AND` and `OR` operators. For example, to find domains that are suspended + * or have specific issues flagged, use an expression like + * `(state=SUSPENDED) OR (issue:*)`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. + * When you iterate the returned iterable, each element will be an object representing + * {@link protos.google.cloud.domains.v1beta1.Registration|Registration}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + * @example include:samples/generated/v1beta1/domains.list_registrations.js + * region_tag:domains_v1beta1_generated_Domains_ListRegistrations_async + */ listRegistrationsAsync( - request?: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, - options?: CallOptions): - AsyncIterable{ + request?: protos.google.cloud.domains.v1beta1.IListRegistrationsRequest, + options?: CallOptions, + ): AsyncIterable { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); const defaultCallSettings = this._defaults['listRegistrations']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listRegistrations iterate %j', request); return this.descriptors.page.listRegistrations.asyncIterate( this.innerApiCalls['listRegistrations'] as GaxCall, request as {}, - callSettings + callSettings, ) as AsyncIterable; } // -------------------- @@ -2272,7 +3212,7 @@ export class DomainsClient { * @param {string} location * @returns {string} Resource name string. */ - locationPath(project:string,location:string) { + locationPath(project: string, location: string) { return this.pathTemplates.locationPathTemplate.render({ project: project, location: location, @@ -2309,7 +3249,7 @@ export class DomainsClient { * @param {string} registration * @returns {string} Resource name string. */ - registrationPath(project:string,location:string,registration:string) { + registrationPath(project: string, location: string, registration: string) { return this.pathTemplates.registrationPathTemplate.render({ project: project, location: location, @@ -2325,7 +3265,8 @@ export class DomainsClient { * @returns {string} A string representing the project. */ matchProjectFromRegistrationName(registrationName: string) { - return this.pathTemplates.registrationPathTemplate.match(registrationName).project; + return this.pathTemplates.registrationPathTemplate.match(registrationName) + .project; } /** @@ -2336,7 +3277,8 @@ export class DomainsClient { * @returns {string} A string representing the location. */ matchLocationFromRegistrationName(registrationName: string) { - return this.pathTemplates.registrationPathTemplate.match(registrationName).location; + return this.pathTemplates.registrationPathTemplate.match(registrationName) + .location; } /** @@ -2347,7 +3289,8 @@ export class DomainsClient { * @returns {string} A string representing the registration. */ matchRegistrationFromRegistrationName(registrationName: string) { - return this.pathTemplates.registrationPathTemplate.match(registrationName).registration; + return this.pathTemplates.registrationPathTemplate.match(registrationName) + .registration; } /** @@ -2358,7 +3301,7 @@ export class DomainsClient { */ close(): Promise { if (this.domainsStub && !this._terminated) { - return this.domainsStub.then(stub => { + return this.domainsStub.then((stub) => { this._log.info('ending gRPC channel'); this._terminated = true; stub.close(); @@ -2367,4 +3310,4 @@ export class DomainsClient { } return Promise.resolve(); } -} \ No newline at end of file +} diff --git a/packages/google-cloud-domains/src/v1beta1/index.ts b/packages/google-cloud-domains/src/v1beta1/index.ts index fa4156724d39..2a910d56857f 100644 --- a/packages/google-cloud-domains/src/v1beta1/index.ts +++ b/packages/google-cloud-domains/src/v1beta1/index.ts @@ -16,4 +16,4 @@ // ** https://github.com/googleapis/gapic-generator-typescript ** // ** All changes to this file may be overwritten. ** -export {DomainsClient} from './domains_client'; +export { DomainsClient } from './domains_client'; diff --git a/packages/google-cloud-domains/system-test/fixtures/sample/src/index.ts b/packages/google-cloud-domains/system-test/fixtures/sample/src/index.ts index 6fdbd07fea34..50d982d6c6fe 100644 --- a/packages/google-cloud-domains/system-test/fixtures/sample/src/index.ts +++ b/packages/google-cloud-domains/system-test/fixtures/sample/src/index.ts @@ -16,7 +16,7 @@ // ** https://github.com/googleapis/gapic-generator-typescript ** // ** All changes to this file may be overwritten. ** -import {DomainsClient} from '@google-cloud/domains'; +import { DomainsClient } from '@google-cloud/domains'; // check that the client class type name can be used function doStuffWithDomainsClient(client: DomainsClient) { diff --git a/packages/google-cloud-domains/system-test/install.ts b/packages/google-cloud-domains/system-test/install.ts index 394f3362d203..ccf167042d2e 100644 --- a/packages/google-cloud-domains/system-test/install.ts +++ b/packages/google-cloud-domains/system-test/install.ts @@ -16,34 +16,36 @@ // ** https://github.com/googleapis/gapic-generator-typescript ** // ** All changes to this file may be overwritten. ** -import {packNTest} from 'pack-n-play'; -import {readFileSync} from 'fs'; -import {describe, it} from 'mocha'; +import { packNTest } from 'pack-n-play'; +import { readFileSync } from 'fs'; +import { describe, it } from 'mocha'; describe('📦 pack-n-play test', () => { - - it('TypeScript code', async function() { + it('TypeScript code', async function () { this.timeout(300000); const options = { packageDir: process.cwd(), sample: { description: 'TypeScript user can use the type definitions', - ts: readFileSync('./system-test/fixtures/sample/src/index.ts').toString() - } + ts: readFileSync( + './system-test/fixtures/sample/src/index.ts', + ).toString(), + }, }; await packNTest(options); }); - it('JavaScript code', async function() { + it('JavaScript code', async function () { this.timeout(300000); const options = { packageDir: process.cwd(), sample: { description: 'JavaScript user can use the library', - ts: readFileSync('./system-test/fixtures/sample/src/index.js').toString() - } + cjs: readFileSync( + './system-test/fixtures/sample/src/index.js', + ).toString(), + }, }; await packNTest(options); }); - }); diff --git a/packages/google-cloud-domains/test/gapic_domains_v1.ts b/packages/google-cloud-domains/test/gapic_domains_v1.ts index 57f7c569e931..74c045d6e7ac 100644 --- a/packages/google-cloud-domains/test/gapic_domains_v1.ts +++ b/packages/google-cloud-domains/test/gapic_domains_v1.ts @@ -19,2475 +19,3155 @@ import * as protos from '../protos/protos'; import * as assert from 'assert'; import * as sinon from 'sinon'; -import {SinonStub} from 'sinon'; -import {describe, it} from 'mocha'; +import { SinonStub } from 'sinon'; +import { describe, it } from 'mocha'; import * as domainsModule from '../src'; -import {PassThrough} from 'stream'; +import { PassThrough } from 'stream'; -import {protobuf, LROperation, operationsProtos} from 'google-gax'; +import { protobuf, LROperation, operationsProtos } from 'google-gax'; // Dynamically loaded proto JSON is needed to get the type information // to fill in default values for request objects -const root = protobuf.Root.fromJSON(require('../protos/protos.json')).resolveAll(); +const root = protobuf.Root.fromJSON( + require('../protos/protos.json'), +).resolveAll(); // eslint-disable-next-line @typescript-eslint/no-unused-vars function getTypeDefaultValue(typeName: string, fields: string[]) { - let type = root.lookupType(typeName) as protobuf.Type; - for (const field of fields.slice(0, -1)) { - type = type.fields[field]?.resolvedType as protobuf.Type; - } - return type.fields[fields[fields.length - 1]]?.defaultValue; + let type = root.lookupType(typeName) as protobuf.Type; + for (const field of fields.slice(0, -1)) { + type = type.fields[field]?.resolvedType as protobuf.Type; + } + return type.fields[fields[fields.length - 1]]?.defaultValue; } function generateSampleMessage(instance: T) { - const filledObject = (instance.constructor as typeof protobuf.Message) - .toObject(instance as protobuf.Message, {defaults: true}); - return (instance.constructor as typeof protobuf.Message).fromObject(filledObject) as T; + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, { defaults: true }); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject, + ) as T; } function stubSimpleCall(response?: ResponseType, error?: Error) { - return error ? sinon.stub().rejects(error) : sinon.stub().resolves([response]); + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); } -function stubSimpleCallWithCallback(response?: ResponseType, error?: Error) { - return error ? sinon.stub().callsArgWith(2, error) : sinon.stub().callsArgWith(2, null, response); +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error, +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); } -function stubLongRunningCall(response?: ResponseType, callError?: Error, lroError?: Error) { - const innerStub = lroError ? sinon.stub().rejects(lroError) : sinon.stub().resolves([response]); - const mockOperation = { - promise: innerStub, - }; - return callError ? sinon.stub().rejects(callError) : sinon.stub().resolves([mockOperation]); +function stubLongRunningCall( + response?: ResponseType, + callError?: Error, + lroError?: Error, +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().rejects(callError) + : sinon.stub().resolves([mockOperation]); } -function stubLongRunningCallWithCallback(response?: ResponseType, callError?: Error, lroError?: Error) { - const innerStub = lroError ? sinon.stub().rejects(lroError) : sinon.stub().resolves([response]); - const mockOperation = { - promise: innerStub, - }; - return callError ? sinon.stub().callsArgWith(2, callError) : sinon.stub().callsArgWith(2, null, mockOperation); +function stubLongRunningCallWithCallback( + response?: ResponseType, + callError?: Error, + lroError?: Error, +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().callsArgWith(2, callError) + : sinon.stub().callsArgWith(2, null, mockOperation); } -function stubPageStreamingCall(responses?: ResponseType[], error?: Error) { - const pagingStub = sinon.stub(); - if (responses) { - for (let i = 0; i < responses.length; ++i) { - pagingStub.onCall(i).callsArgWith(2, null, responses[i]); - } +function stubPageStreamingCall( + responses?: ResponseType[], + error?: Error, +) { + const pagingStub = sinon.stub(); + if (responses) { + for (let i = 0; i < responses.length; ++i) { + pagingStub.onCall(i).callsArgWith(2, null, responses[i]); } - const transformStub = error ? sinon.stub().callsArgWith(2, error) : pagingStub; - const mockStream = new PassThrough({ - objectMode: true, - transform: transformStub, - }); - // trigger as many responses as needed - if (responses) { - for (let i = 0; i < responses.length; ++i) { - setImmediate(() => { mockStream.write({}); }); - } - setImmediate(() => { mockStream.end(); }); - } else { - setImmediate(() => { mockStream.write({}); }); - setImmediate(() => { mockStream.end(); }); + } + const transformStub = error + ? sinon.stub().callsArgWith(2, error) + : pagingStub; + const mockStream = new PassThrough({ + objectMode: true, + transform: transformStub, + }); + // trigger as many responses as needed + if (responses) { + for (let i = 0; i < responses.length; ++i) { + setImmediate(() => { + mockStream.write({}); + }); } - return sinon.stub().returns(mockStream); + setImmediate(() => { + mockStream.end(); + }); + } else { + setImmediate(() => { + mockStream.write({}); + }); + setImmediate(() => { + mockStream.end(); + }); + } + return sinon.stub().returns(mockStream); } -function stubAsyncIterationCall(responses?: ResponseType[], error?: Error) { - let counter = 0; - const asyncIterable = { - [Symbol.asyncIterator]() { - return { - async next() { - if (error) { - return Promise.reject(error); - } - if (counter >= responses!.length) { - return Promise.resolve({done: true, value: undefined}); - } - return Promise.resolve({done: false, value: responses![counter++]}); - } - }; - } - }; - return sinon.stub().returns(asyncIterable); +function stubAsyncIterationCall( + responses?: ResponseType[], + error?: Error, +) { + let counter = 0; + const asyncIterable = { + [Symbol.asyncIterator]() { + return { + async next() { + if (error) { + return Promise.reject(error); + } + if (counter >= responses!.length) { + return Promise.resolve({ done: true, value: undefined }); + } + return Promise.resolve({ done: false, value: responses![counter++] }); + }, + }; + }, + }; + return sinon.stub().returns(asyncIterable); } describe('v1.DomainsClient', () => { - describe('Common methods', () => { - it('has apiEndpoint', () => { - const client = new domainsModule.v1.DomainsClient(); - const apiEndpoint = client.apiEndpoint; - assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); - }); - - it('has universeDomain', () => { - const client = new domainsModule.v1.DomainsClient(); - const universeDomain = client.universeDomain; - assert.strictEqual(universeDomain, "googleapis.com"); - }); - - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - it('throws DeprecationWarning if static servicePath is used', () => { - const stub = sinon.stub(process, 'emitWarning'); - const servicePath = domainsModule.v1.DomainsClient.servicePath; - assert.strictEqual(servicePath, 'domains.googleapis.com'); - assert(stub.called); - stub.restore(); - }); - - it('throws DeprecationWarning if static apiEndpoint is used', () => { - const stub = sinon.stub(process, 'emitWarning'); - const apiEndpoint = domainsModule.v1.DomainsClient.apiEndpoint; - assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); - assert(stub.called); - stub.restore(); - }); - } - it('sets apiEndpoint according to universe domain camelCase', () => { - const client = new domainsModule.v1.DomainsClient({universeDomain: 'example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.example.com'); - }); - - it('sets apiEndpoint according to universe domain snakeCase', () => { - const client = new domainsModule.v1.DomainsClient({universe_domain: 'example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.example.com'); - }); - - if (typeof process === 'object' && 'env' in process) { - describe('GOOGLE_CLOUD_UNIVERSE_DOMAIN environment variable', () => { - it('sets apiEndpoint from environment variable', () => { - const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; - const client = new domainsModule.v1.DomainsClient(); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.example.com'); - if (saved) { - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; - } else { - delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - } - }); - - it('value configured in code has priority over environment variable', () => { - const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; - const client = new domainsModule.v1.DomainsClient({universeDomain: 'configured.example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.configured.example.com'); - if (saved) { - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; - } else { - delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - } - }); - }); - } - it('does not allow setting both universeDomain and universe_domain', () => { - assert.throws(() => { new domainsModule.v1.DomainsClient({universe_domain: 'example.com', universeDomain: 'example.net'}); }); - }); - - it('has port', () => { - const port = domainsModule.v1.DomainsClient.port; - assert(port); - assert(typeof port === 'number'); - }); - - it('should create a client with no option', () => { - const client = new domainsModule.v1.DomainsClient(); - assert(client); - }); - - it('should create a client with gRPC fallback', () => { - const client = new domainsModule.v1.DomainsClient({ - fallback: true, - }); - assert(client); - }); - - it('has initialize method and supports deferred initialization', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - assert.strictEqual(client.domainsStub, undefined); - await client.initialize(); - assert(client.domainsStub); - }); - - it('has close method for the initialized client', done => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.initialize().catch(err => {throw err}); - assert(client.domainsStub); - client.close().then(() => { - done(); - }).catch(err => {throw err}); - }); - - it('has close method for the non-initialized client', done => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - assert.strictEqual(client.domainsStub, undefined); - client.close().then(() => { - done(); - }).catch(err => {throw err}); - }); - - it('has getProjectId method', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); - const result = await client.getProjectId(); - assert.strictEqual(result, fakeProjectId); - assert((client.auth.getProjectId as SinonStub).calledWithExactly()); - }); - - it('has getProjectId method with callback', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.auth.getProjectId = sinon.stub().callsArgWith(0, null, fakeProjectId); - const promise = new Promise((resolve, reject) => { - client.getProjectId((err?: Error|null, projectId?: string|null) => { - if (err) { - reject(err); - } else { - resolve(projectId); - } - }); - }); - const result = await promise; - assert.strictEqual(result, fakeProjectId); - }); + describe('Common methods', () => { + it('has apiEndpoint', () => { + const client = new domainsModule.v1.DomainsClient(); + const apiEndpoint = client.apiEndpoint; + assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); }); - describe('searchDomains', () => { - it('invokes searchDomains without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.SearchDomainsResponse() - ); - client.innerApiCalls.searchDomains = stubSimpleCall(expectedResponse); - const [response] = await client.searchDomains(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes searchDomains without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.SearchDomainsResponse() - ); - client.innerApiCalls.searchDomains = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.searchDomains( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1.ISearchDomainsResponse|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes searchDomains with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.searchDomains = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.searchDomains(request), expectedError); - const actualRequest = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes searchDomains with closed client', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.searchDomains(request), expectedError); - }); + it('has universeDomain', () => { + const client = new domainsModule.v1.DomainsClient(); + const universeDomain = client.universeDomain; + assert.strictEqual(universeDomain, 'googleapis.com'); }); - describe('retrieveRegisterParameters', () => { - it('invokes retrieveRegisterParameters without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveRegisterParametersResponse() - ); - client.innerApiCalls.retrieveRegisterParameters = stubSimpleCall(expectedResponse); - const [response] = await client.retrieveRegisterParameters(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes retrieveRegisterParameters without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveRegisterParametersResponse() - ); - client.innerApiCalls.retrieveRegisterParameters = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.retrieveRegisterParameters( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + it('throws DeprecationWarning if static servicePath is used', () => { + const stub = sinon.stub(process, 'emitWarning'); + const servicePath = domainsModule.v1.DomainsClient.servicePath; + assert.strictEqual(servicePath, 'domains.googleapis.com'); + assert(stub.called); + stub.restore(); + }); + + it('throws DeprecationWarning if static apiEndpoint is used', () => { + const stub = sinon.stub(process, 'emitWarning'); + const apiEndpoint = domainsModule.v1.DomainsClient.apiEndpoint; + assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); + assert(stub.called); + stub.restore(); + }); + } + it('sets apiEndpoint according to universe domain camelCase', () => { + const client = new domainsModule.v1.DomainsClient({ + universeDomain: 'example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.example.com'); + }); - it('invokes retrieveRegisterParameters with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.retrieveRegisterParameters = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.retrieveRegisterParameters(request), expectedError); - const actualRequest = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('sets apiEndpoint according to universe domain snakeCase', () => { + const client = new domainsModule.v1.DomainsClient({ + universe_domain: 'example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.example.com'); + }); - it('invokes retrieveRegisterParameters with closed client', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.retrieveRegisterParameters(request), expectedError); + if (typeof process === 'object' && 'env' in process) { + describe('GOOGLE_CLOUD_UNIVERSE_DOMAIN environment variable', () => { + it('sets apiEndpoint from environment variable', () => { + const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; + const client = new domainsModule.v1.DomainsClient(); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.example.com'); + if (saved) { + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; + } else { + delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + } + }); + + it('value configured in code has priority over environment variable', () => { + const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; + const client = new domainsModule.v1.DomainsClient({ + universeDomain: 'configured.example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.configured.example.com'); + if (saved) { + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; + } else { + delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + } + }); + }); + } + it('does not allow setting both universeDomain and universe_domain', () => { + assert.throws(() => { + new domainsModule.v1.DomainsClient({ + universe_domain: 'example.com', + universeDomain: 'example.net', }); + }); }); - describe('retrieveTransferParameters', () => { - it('invokes retrieveTransferParameters without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveTransferParametersResponse() - ); - client.innerApiCalls.retrieveTransferParameters = stubSimpleCall(expectedResponse); - const [response] = await client.retrieveTransferParameters(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('has port', () => { + const port = domainsModule.v1.DomainsClient.port; + assert(port); + assert(typeof port === 'number'); + }); - it('invokes retrieveTransferParameters without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveTransferParametersResponse() - ); - client.innerApiCalls.retrieveTransferParameters = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.retrieveTransferParameters( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('should create a client with no option', () => { + const client = new domainsModule.v1.DomainsClient(); + assert(client); + }); - it('invokes retrieveTransferParameters with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.retrieveTransferParameters = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.retrieveTransferParameters(request), expectedError); - const actualRequest = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('should create a client with gRPC fallback', () => { + const client = new domainsModule.v1.DomainsClient({ + fallback: true, + }); + assert(client); + }); - it('invokes retrieveTransferParameters with closed client', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.retrieveTransferParameters(request), expectedError); - }); + it('has initialize method and supports deferred initialization', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + assert.strictEqual(client.domainsStub, undefined); + await client.initialize(); + assert(client.domainsStub); }); - describe('getRegistration', () => { - it('invokes getRegistration without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.Registration() - ); - client.innerApiCalls.getRegistration = stubSimpleCall(expectedResponse); - const [response] = await client.getRegistration(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + it('has close method for the initialized client', (done) => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.initialize().catch((err) => { + throw err; + }); + assert(client.domainsStub); + client + .close() + .then(() => { + done(); + }) + .catch((err) => { + throw err; }); + }); - it('invokes getRegistration without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.Registration() - ); - client.innerApiCalls.getRegistration = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.getRegistration( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1.IRegistration|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + it('has close method for the non-initialized client', (done) => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + assert.strictEqual(client.domainsStub, undefined); + client + .close() + .then(() => { + done(); + }) + .catch((err) => { + throw err; }); + }); - it('invokes getRegistration with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.getRegistration = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.getRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); - it('invokes getRegistration with closed client', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.getRegistration(request), expectedError); - }); + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + }); + + describe('searchDomains', () => { + it('invokes searchDomains without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.SearchDomainsResponse(), + ); + client.innerApiCalls.searchDomains = stubSimpleCall(expectedResponse); + const [response] = await client.searchDomains(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('retrieveAuthorizationCode', () => { - it('invokes retrieveAuthorizationCode without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.AuthorizationCode() - ); - client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCall(expectedResponse); - const [response] = await client.retrieveAuthorizationCode(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes searchDomains without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.SearchDomainsResponse(), + ); + client.innerApiCalls.searchDomains = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.searchDomains( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1.ISearchDomainsResponse | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes retrieveAuthorizationCode without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.AuthorizationCode() - ); - client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.retrieveAuthorizationCode( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1.IAuthorizationCode|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes searchDomains with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.searchDomains = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.searchDomains(request), expectedError); + const actualRequest = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes retrieveAuthorizationCode with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.retrieveAuthorizationCode(request), expectedError); - const actualRequest = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes searchDomains with closed client', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.searchDomains(request), expectedError); + }); + }); + + describe('retrieveRegisterParameters', () => { + it('invokes retrieveRegisterParameters without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveRegisterParametersResponse(), + ); + client.innerApiCalls.retrieveRegisterParameters = + stubSimpleCall(expectedResponse); + const [response] = await client.retrieveRegisterParameters(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes retrieveAuthorizationCode with closed client', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.retrieveAuthorizationCode(request), expectedError); - }); + it('invokes retrieveRegisterParameters without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveRegisterParametersResponse(), + ); + client.innerApiCalls.retrieveRegisterParameters = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.retrieveRegisterParameters( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1.IRetrieveRegisterParametersResponse | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('resetAuthorizationCode', () => { - it('invokes resetAuthorizationCode without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.AuthorizationCode() - ); - client.innerApiCalls.resetAuthorizationCode = stubSimpleCall(expectedResponse); - const [response] = await client.resetAuthorizationCode(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveRegisterParameters with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.retrieveRegisterParameters = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.retrieveRegisterParameters(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes resetAuthorizationCode without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1.AuthorizationCode() - ); - client.innerApiCalls.resetAuthorizationCode = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.resetAuthorizationCode( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1.IAuthorizationCode|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveRegisterParameters with closed client', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.retrieveRegisterParameters(request), + expectedError, + ); + }); + }); + + describe('retrieveTransferParameters', () => { + it('invokes retrieveTransferParameters without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveTransferParametersResponse(), + ); + client.innerApiCalls.retrieveTransferParameters = + stubSimpleCall(expectedResponse); + const [response] = await client.retrieveTransferParameters(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes resetAuthorizationCode with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.resetAuthorizationCode = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.resetAuthorizationCode(request), expectedError); - const actualRequest = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveTransferParameters without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveTransferParametersResponse(), + ); + client.innerApiCalls.retrieveTransferParameters = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.retrieveTransferParameters( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1.IRetrieveTransferParametersResponse | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes resetAuthorizationCode with closed client', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.resetAuthorizationCode(request), expectedError); - }); + it('invokes retrieveTransferParameters with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.retrieveTransferParameters = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.retrieveTransferParameters(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('registerDomain', () => { - it('invokes registerDomain without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.registerDomain = stubLongRunningCall(expectedResponse); - const [operation] = await client.registerDomain(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveTransferParameters with closed client', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.retrieveTransferParameters(request), + expectedError, + ); + }); + }); + + describe('getRegistration', () => { + it('invokes getRegistration without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ); + client.innerApiCalls.getRegistration = stubSimpleCall(expectedResponse); + const [response] = await client.getRegistration(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes registerDomain without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.registerDomain = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.registerDomain( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getRegistration without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ); + client.innerApiCalls.getRegistration = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getRegistration( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1.IRegistration | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes registerDomain with call error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.registerDomain = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.registerDomain(request), expectedError); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getRegistration with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.getRegistration = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.getRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes registerDomain with LRO error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.registerDomain = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.registerDomain(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getRegistration with closed client', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.getRegistration(request), expectedError); + }); + }); + + describe('retrieveAuthorizationCode', () => { + it('invokes retrieveAuthorizationCode without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.AuthorizationCode(), + ); + client.innerApiCalls.retrieveAuthorizationCode = + stubSimpleCall(expectedResponse); + const [response] = await client.retrieveAuthorizationCode(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkRegisterDomainProgress without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkRegisterDomainProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes retrieveAuthorizationCode without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.AuthorizationCode(), + ); + client.innerApiCalls.retrieveAuthorizationCode = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.retrieveAuthorizationCode( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1.IAuthorizationCode | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkRegisterDomainProgress with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkRegisterDomainProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes retrieveAuthorizationCode with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.retrieveAuthorizationCode(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('transferDomain', () => { - it('invokes transferDomain without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.transferDomain = stubLongRunningCall(expectedResponse); - const [operation] = await client.transferDomain(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveAuthorizationCode with closed client', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.retrieveAuthorizationCode(request), + expectedError, + ); + }); + }); + + describe('resetAuthorizationCode', () => { + it('invokes resetAuthorizationCode without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.AuthorizationCode(), + ); + client.innerApiCalls.resetAuthorizationCode = + stubSimpleCall(expectedResponse); + const [response] = await client.resetAuthorizationCode(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes transferDomain without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.transferDomain = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.transferDomain( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes resetAuthorizationCode without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1.AuthorizationCode(), + ); + client.innerApiCalls.resetAuthorizationCode = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.resetAuthorizationCode( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1.IAuthorizationCode | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes transferDomain with call error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.transferDomain = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.transferDomain(request), expectedError); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes resetAuthorizationCode with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.resetAuthorizationCode = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.resetAuthorizationCode(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes transferDomain with LRO error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.transferDomain = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.transferDomain(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes resetAuthorizationCode with closed client', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.resetAuthorizationCode(request), + expectedError, + ); + }); + }); + + describe('registerDomain', () => { + it('invokes registerDomain without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.registerDomain = + stubLongRunningCall(expectedResponse); + const [operation] = await client.registerDomain(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkTransferDomainProgress without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkTransferDomainProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes registerDomain without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.registerDomain = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.registerDomain( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkTransferDomainProgress with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkTransferDomainProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes registerDomain with call error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.registerDomain = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.registerDomain(request), expectedError); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('updateRegistration', () => { - it('invokes updateRegistration without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.updateRegistration = stubLongRunningCall(expectedResponse); - const [operation] = await client.updateRegistration(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes registerDomain with LRO error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.registerDomain = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.registerDomain(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateRegistration without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.updateRegistration = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.updateRegistration( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkRegisterDomainProgress without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkRegisterDomainProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes updateRegistration with call error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.updateRegistration = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.updateRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkRegisterDomainProgress with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkRegisterDomainProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('transferDomain', () => { + it('invokes transferDomain without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.transferDomain = + stubLongRunningCall(expectedResponse); + const [operation] = await client.transferDomain(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateRegistration with LRO error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.updateRegistration = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.updateRegistration(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes transferDomain without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.transferDomain = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.transferDomain( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkUpdateRegistrationProgress without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkUpdateRegistrationProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes transferDomain with call error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.transferDomain = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.transferDomain(request), expectedError); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkUpdateRegistrationProgress with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkUpdateRegistrationProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes transferDomain with LRO error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.transferDomain = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.transferDomain(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('configureManagementSettings', () => { - it('invokes configureManagementSettings without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureManagementSettings = stubLongRunningCall(expectedResponse); - const [operation] = await client.configureManagementSettings(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkTransferDomainProgress without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkTransferDomainProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes configureManagementSettings without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureManagementSettings = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.configureManagementSettings( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkTransferDomainProgress with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkTransferDomainProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('updateRegistration', () => { + it('invokes updateRegistration without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.updateRegistration = + stubLongRunningCall(expectedResponse); + const [operation] = await client.updateRegistration(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureManagementSettings with call error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureManagementSettings = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.configureManagementSettings(request), expectedError); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes updateRegistration without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.updateRegistration = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updateRegistration( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureManagementSettings with LRO error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureManagementSettings = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.configureManagementSettings(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes updateRegistration with call error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.updateRegistration = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.updateRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureManagementSettingsProgress without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkConfigureManagementSettingsProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes updateRegistration with LRO error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.updateRegistration = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.updateRegistration(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureManagementSettingsProgress with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkConfigureManagementSettingsProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes checkUpdateRegistrationProgress without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkUpdateRegistrationProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); }); - describe('configureDnsSettings', () => { - it('invokes configureDnsSettings without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureDnsSettings = stubLongRunningCall(expectedResponse); - const [operation] = await client.configureDnsSettings(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkUpdateRegistrationProgress with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkUpdateRegistrationProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('configureManagementSettings', () => { + it('invokes configureManagementSettings without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureManagementSettings = + stubLongRunningCall(expectedResponse); + const [operation] = await client.configureManagementSettings(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureDnsSettings without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureDnsSettings = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.configureDnsSettings( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureManagementSettings without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureManagementSettings = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.configureManagementSettings( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureDnsSettings with call error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureDnsSettings = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.configureDnsSettings(request), expectedError); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureManagementSettings with call error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureManagementSettings = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects( + client.configureManagementSettings(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureDnsSettings with LRO error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureDnsSettings = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.configureDnsSettings(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureManagementSettings with LRO error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureManagementSettings = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.configureManagementSettings(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureDnsSettingsProgress without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkConfigureDnsSettingsProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes checkConfigureManagementSettingsProgress without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = + await client.checkConfigureManagementSettingsProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes checkConfigureDnsSettingsProgress with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkConfigureDnsSettingsProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes checkConfigureManagementSettingsProgress with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkConfigureManagementSettingsProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('configureDnsSettings', () => { + it('invokes configureDnsSettings without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureDnsSettings = + stubLongRunningCall(expectedResponse); + const [operation] = await client.configureDnsSettings(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('configureContactSettings', () => { - it('invokes configureContactSettings without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureContactSettings = stubLongRunningCall(expectedResponse); - const [operation] = await client.configureContactSettings(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureDnsSettings without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureDnsSettings = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.configureDnsSettings( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureContactSettings without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureContactSettings = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.configureContactSettings( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureDnsSettings with call error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureDnsSettings = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.configureDnsSettings(request), expectedError); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureContactSettings with call error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureContactSettings = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.configureContactSettings(request), expectedError); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureDnsSettings with LRO error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureDnsSettings = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.configureDnsSettings(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureContactSettings with LRO error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureContactSettings = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.configureContactSettings(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkConfigureDnsSettingsProgress without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkConfigureDnsSettingsProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes checkConfigureContactSettingsProgress without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkConfigureContactSettingsProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes checkConfigureDnsSettingsProgress with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkConfigureDnsSettingsProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('configureContactSettings', () => { + it('invokes configureContactSettings without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureContactSettings = + stubLongRunningCall(expectedResponse); + const [operation] = await client.configureContactSettings(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureContactSettingsProgress with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkConfigureContactSettingsProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes configureContactSettings without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureContactSettings = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.configureContactSettings( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('exportRegistration', () => { - it('invokes exportRegistration without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.exportRegistration = stubLongRunningCall(expectedResponse); - const [operation] = await client.exportRegistration(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureContactSettings with call error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureContactSettings = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects( + client.configureContactSettings(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes exportRegistration without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.exportRegistration = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.exportRegistration( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureContactSettings with LRO error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureContactSettings = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.configureContactSettings(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes exportRegistration with call error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.exportRegistration = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.exportRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkConfigureContactSettingsProgress without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = + await client.checkConfigureContactSettingsProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes exportRegistration with LRO error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.exportRegistration = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.exportRegistration(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkConfigureContactSettingsProgress with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkConfigureContactSettingsProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('exportRegistration', () => { + it('invokes exportRegistration without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.exportRegistration = + stubLongRunningCall(expectedResponse); + const [operation] = await client.exportRegistration(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkExportRegistrationProgress without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkExportRegistrationProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes exportRegistration without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.exportRegistration = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.exportRegistration( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1.IRegistration, + protos.google.cloud.domains.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkExportRegistrationProgress with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkExportRegistrationProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes exportRegistration with call error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.exportRegistration = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.exportRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('deleteRegistration', () => { - it('invokes deleteRegistration without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.deleteRegistration = stubLongRunningCall(expectedResponse); - const [operation] = await client.deleteRegistration(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes exportRegistration with LRO error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.exportRegistration = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.exportRegistration(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes deleteRegistration without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.deleteRegistration = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.deleteRegistration( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkExportRegistrationProgress without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkExportRegistrationProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes deleteRegistration with call error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.deleteRegistration = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.deleteRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkExportRegistrationProgress with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkExportRegistrationProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('deleteRegistration', () => { + it('invokes deleteRegistration without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.deleteRegistration = + stubLongRunningCall(expectedResponse); + const [operation] = await client.deleteRegistration(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes deleteRegistration with LRO error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.deleteRegistration = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.deleteRegistration(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes deleteRegistration without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.deleteRegistration = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.deleteRegistration( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkDeleteRegistrationProgress without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkDeleteRegistrationProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes deleteRegistration with call error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteRegistration = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.deleteRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkDeleteRegistrationProgress with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkDeleteRegistrationProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes deleteRegistration with LRO error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteRegistration = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.deleteRegistration(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('listRegistrations', () => { - it('invokes listRegistrations without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - ]; - client.innerApiCalls.listRegistrations = stubSimpleCall(expectedResponse); - const [response] = await client.listRegistrations(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkDeleteRegistrationProgress without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkDeleteRegistrationProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes listRegistrations without error using callback', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - ]; - client.innerApiCalls.listRegistrations = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.listRegistrations( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1.IRegistration[]|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkDeleteRegistrationProgress with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkDeleteRegistrationProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('listRegistrations', () => { + it('invokes listRegistrations without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + ]; + client.innerApiCalls.listRegistrations = stubSimpleCall(expectedResponse); + const [response] = await client.listRegistrations(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listRegistrations with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.listRegistrations = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.listRegistrations(request), expectedError); - const actualRequest = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes listRegistrations without error using callback', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + ]; + client.innerApiCalls.listRegistrations = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listRegistrations( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1.IRegistration[] | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listRegistrationsStream without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - ]; - client.descriptors.page.listRegistrations.createStream = stubPageStreamingCall(expectedResponse); - const stream = client.listRegistrationsStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.google.cloud.domains.v1.Registration[] = []; - stream.on('data', (response: protos.google.cloud.domains.v1.Registration) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - const responses = await promise; - assert.deepStrictEqual(responses, expectedResponse); - assert((client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listRegistrations, request)); - assert( - (client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listRegistrations with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.listRegistrations = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.listRegistrations(request), expectedError); + const actualRequest = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listRegistrationsStream with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listRegistrations.createStream = stubPageStreamingCall(undefined, expectedError); - const stream = client.listRegistrationsStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.google.cloud.domains.v1.Registration[] = []; - stream.on('data', (response: protos.google.cloud.domains.v1.Registration) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - await assert.rejects(promise, expectedError); - assert((client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listRegistrations, request)); - assert( - (client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listRegistrationsStream without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + ]; + client.descriptors.page.listRegistrations.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listRegistrationsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.domains.v1.Registration[] = []; + stream.on( + 'data', + (response: protos.google.cloud.domains.v1.Registration) => { + responses.push(response); + }, + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listRegistrations, request), + ); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('uses async iteration with listRegistrations without error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1.Registration()), - ]; - client.descriptors.page.listRegistrations.asyncIterate = stubAsyncIterationCall(expectedResponse); - const responses: protos.google.cloud.domains.v1.IRegistration[] = []; - const iterable = client.listRegistrationsAsync(request); - for await (const resource of iterable) { - responses.push(resource!); - } - assert.deepStrictEqual(responses, expectedResponse); - assert.deepStrictEqual( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listRegistrationsStream with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listRegistrations.createStream = + stubPageStreamingCall(undefined, expectedError); + const stream = client.listRegistrationsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.domains.v1.Registration[] = []; + stream.on( + 'data', + (response: protos.google.cloud.domains.v1.Registration) => { + responses.push(response); + }, + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listRegistrations, request), + ); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('uses async iteration with listRegistrations with error', async () => { - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listRegistrations.asyncIterate = stubAsyncIterationCall(undefined, expectedError); - const iterable = client.listRegistrationsAsync(request); - await assert.rejects(async () => { - const responses: protos.google.cloud.domains.v1.IRegistration[] = []; - for await (const resource of iterable) { - responses.push(resource!); - } - }); - assert.deepStrictEqual( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('uses async iteration with listRegistrations without error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1.Registration(), + ), + ]; + client.descriptors.page.listRegistrations.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.google.cloud.domains.v1.IRegistration[] = []; + const iterable = client.listRegistrationsAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.descriptors.page.listRegistrations.asyncIterate as SinonStub + ).getCall(0).args[1], + request, + ); + assert( + (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); }); - describe('Path templates', () => { - - describe('location', async () => { - const fakePath = "/rendered/path/location"; - const expectedParameters = { - project: "projectValue", - location: "locationValue", - }; - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - client.pathTemplates.locationPathTemplate.render = - sinon.stub().returns(fakePath); - client.pathTemplates.locationPathTemplate.match = - sinon.stub().returns(expectedParameters); - - it('locationPath', () => { - const result = client.locationPath("projectValue", "locationValue"); - assert.strictEqual(result, fakePath); - assert((client.pathTemplates.locationPathTemplate.render as SinonStub) - .getCall(-1).calledWith(expectedParameters)); - }); - - it('matchProjectFromLocationName', () => { - const result = client.matchProjectFromLocationName(fakePath); - assert.strictEqual(result, "projectValue"); - assert((client.pathTemplates.locationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - - it('matchLocationFromLocationName', () => { - const result = client.matchLocationFromLocationName(fakePath); - assert.strictEqual(result, "locationValue"); - assert((client.pathTemplates.locationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - }); + it('uses async iteration with listRegistrations with error', async () => { + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listRegistrations.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listRegistrationsAsync(request); + await assert.rejects(async () => { + const responses: protos.google.cloud.domains.v1.IRegistration[] = []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.descriptors.page.listRegistrations.asyncIterate as SinonStub + ).getCall(0).args[1], + request, + ); + assert( + (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); + }); + + describe('Path templates', () => { + describe('location', async () => { + const fakePath = '/rendered/path/location'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + }; + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + client.pathTemplates.locationPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.locationPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('locationPath', () => { + const result = client.locationPath('projectValue', 'locationValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.locationPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters), + ); + }); + + it('matchProjectFromLocationName', () => { + const result = client.matchProjectFromLocationName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + + it('matchLocationFromLocationName', () => { + const result = client.matchLocationFromLocationName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + }); - describe('registration', async () => { - const fakePath = "/rendered/path/registration"; - const expectedParameters = { - project: "projectValue", - location: "locationValue", - registration: "registrationValue", - }; - const client = new domainsModule.v1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - client.pathTemplates.registrationPathTemplate.render = - sinon.stub().returns(fakePath); - client.pathTemplates.registrationPathTemplate.match = - sinon.stub().returns(expectedParameters); - - it('registrationPath', () => { - const result = client.registrationPath("projectValue", "locationValue", "registrationValue"); - assert.strictEqual(result, fakePath); - assert((client.pathTemplates.registrationPathTemplate.render as SinonStub) - .getCall(-1).calledWith(expectedParameters)); - }); - - it('matchProjectFromRegistrationName', () => { - const result = client.matchProjectFromRegistrationName(fakePath); - assert.strictEqual(result, "projectValue"); - assert((client.pathTemplates.registrationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - - it('matchLocationFromRegistrationName', () => { - const result = client.matchLocationFromRegistrationName(fakePath); - assert.strictEqual(result, "locationValue"); - assert((client.pathTemplates.registrationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - - it('matchRegistrationFromRegistrationName', () => { - const result = client.matchRegistrationFromRegistrationName(fakePath); - assert.strictEqual(result, "registrationValue"); - assert((client.pathTemplates.registrationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - }); + describe('registration', async () => { + const fakePath = '/rendered/path/registration'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + registration: 'registrationValue', + }; + const client = new domainsModule.v1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + client.pathTemplates.registrationPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.registrationPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('registrationPath', () => { + const result = client.registrationPath( + 'projectValue', + 'locationValue', + 'registrationValue', + ); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.registrationPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters), + ); + }); + + it('matchProjectFromRegistrationName', () => { + const result = client.matchProjectFromRegistrationName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.registrationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + + it('matchLocationFromRegistrationName', () => { + const result = client.matchLocationFromRegistrationName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.registrationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + + it('matchRegistrationFromRegistrationName', () => { + const result = client.matchRegistrationFromRegistrationName(fakePath); + assert.strictEqual(result, 'registrationValue'); + assert( + (client.pathTemplates.registrationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); }); + }); }); diff --git a/packages/google-cloud-domains/test/gapic_domains_v1alpha2.ts b/packages/google-cloud-domains/test/gapic_domains_v1alpha2.ts index e51889ad37a3..42c4ec2e9323 100644 --- a/packages/google-cloud-domains/test/gapic_domains_v1alpha2.ts +++ b/packages/google-cloud-domains/test/gapic_domains_v1alpha2.ts @@ -19,2475 +19,3161 @@ import * as protos from '../protos/protos'; import * as assert from 'assert'; import * as sinon from 'sinon'; -import {SinonStub} from 'sinon'; -import {describe, it} from 'mocha'; +import { SinonStub } from 'sinon'; +import { describe, it } from 'mocha'; import * as domainsModule from '../src'; -import {PassThrough} from 'stream'; +import { PassThrough } from 'stream'; -import {protobuf, LROperation, operationsProtos} from 'google-gax'; +import { protobuf, LROperation, operationsProtos } from 'google-gax'; // Dynamically loaded proto JSON is needed to get the type information // to fill in default values for request objects -const root = protobuf.Root.fromJSON(require('../protos/protos.json')).resolveAll(); +const root = protobuf.Root.fromJSON( + require('../protos/protos.json'), +).resolveAll(); // eslint-disable-next-line @typescript-eslint/no-unused-vars function getTypeDefaultValue(typeName: string, fields: string[]) { - let type = root.lookupType(typeName) as protobuf.Type; - for (const field of fields.slice(0, -1)) { - type = type.fields[field]?.resolvedType as protobuf.Type; - } - return type.fields[fields[fields.length - 1]]?.defaultValue; + let type = root.lookupType(typeName) as protobuf.Type; + for (const field of fields.slice(0, -1)) { + type = type.fields[field]?.resolvedType as protobuf.Type; + } + return type.fields[fields[fields.length - 1]]?.defaultValue; } function generateSampleMessage(instance: T) { - const filledObject = (instance.constructor as typeof protobuf.Message) - .toObject(instance as protobuf.Message, {defaults: true}); - return (instance.constructor as typeof protobuf.Message).fromObject(filledObject) as T; + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, { defaults: true }); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject, + ) as T; } function stubSimpleCall(response?: ResponseType, error?: Error) { - return error ? sinon.stub().rejects(error) : sinon.stub().resolves([response]); + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); } -function stubSimpleCallWithCallback(response?: ResponseType, error?: Error) { - return error ? sinon.stub().callsArgWith(2, error) : sinon.stub().callsArgWith(2, null, response); +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error, +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); } -function stubLongRunningCall(response?: ResponseType, callError?: Error, lroError?: Error) { - const innerStub = lroError ? sinon.stub().rejects(lroError) : sinon.stub().resolves([response]); - const mockOperation = { - promise: innerStub, - }; - return callError ? sinon.stub().rejects(callError) : sinon.stub().resolves([mockOperation]); +function stubLongRunningCall( + response?: ResponseType, + callError?: Error, + lroError?: Error, +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().rejects(callError) + : sinon.stub().resolves([mockOperation]); } -function stubLongRunningCallWithCallback(response?: ResponseType, callError?: Error, lroError?: Error) { - const innerStub = lroError ? sinon.stub().rejects(lroError) : sinon.stub().resolves([response]); - const mockOperation = { - promise: innerStub, - }; - return callError ? sinon.stub().callsArgWith(2, callError) : sinon.stub().callsArgWith(2, null, mockOperation); +function stubLongRunningCallWithCallback( + response?: ResponseType, + callError?: Error, + lroError?: Error, +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().callsArgWith(2, callError) + : sinon.stub().callsArgWith(2, null, mockOperation); } -function stubPageStreamingCall(responses?: ResponseType[], error?: Error) { - const pagingStub = sinon.stub(); - if (responses) { - for (let i = 0; i < responses.length; ++i) { - pagingStub.onCall(i).callsArgWith(2, null, responses[i]); - } +function stubPageStreamingCall( + responses?: ResponseType[], + error?: Error, +) { + const pagingStub = sinon.stub(); + if (responses) { + for (let i = 0; i < responses.length; ++i) { + pagingStub.onCall(i).callsArgWith(2, null, responses[i]); } - const transformStub = error ? sinon.stub().callsArgWith(2, error) : pagingStub; - const mockStream = new PassThrough({ - objectMode: true, - transform: transformStub, - }); - // trigger as many responses as needed - if (responses) { - for (let i = 0; i < responses.length; ++i) { - setImmediate(() => { mockStream.write({}); }); - } - setImmediate(() => { mockStream.end(); }); - } else { - setImmediate(() => { mockStream.write({}); }); - setImmediate(() => { mockStream.end(); }); + } + const transformStub = error + ? sinon.stub().callsArgWith(2, error) + : pagingStub; + const mockStream = new PassThrough({ + objectMode: true, + transform: transformStub, + }); + // trigger as many responses as needed + if (responses) { + for (let i = 0; i < responses.length; ++i) { + setImmediate(() => { + mockStream.write({}); + }); } - return sinon.stub().returns(mockStream); + setImmediate(() => { + mockStream.end(); + }); + } else { + setImmediate(() => { + mockStream.write({}); + }); + setImmediate(() => { + mockStream.end(); + }); + } + return sinon.stub().returns(mockStream); } -function stubAsyncIterationCall(responses?: ResponseType[], error?: Error) { - let counter = 0; - const asyncIterable = { - [Symbol.asyncIterator]() { - return { - async next() { - if (error) { - return Promise.reject(error); - } - if (counter >= responses!.length) { - return Promise.resolve({done: true, value: undefined}); - } - return Promise.resolve({done: false, value: responses![counter++]}); - } - }; - } - }; - return sinon.stub().returns(asyncIterable); +function stubAsyncIterationCall( + responses?: ResponseType[], + error?: Error, +) { + let counter = 0; + const asyncIterable = { + [Symbol.asyncIterator]() { + return { + async next() { + if (error) { + return Promise.reject(error); + } + if (counter >= responses!.length) { + return Promise.resolve({ done: true, value: undefined }); + } + return Promise.resolve({ done: false, value: responses![counter++] }); + }, + }; + }, + }; + return sinon.stub().returns(asyncIterable); } describe('v1alpha2.DomainsClient', () => { - describe('Common methods', () => { - it('has apiEndpoint', () => { - const client = new domainsModule.v1alpha2.DomainsClient(); - const apiEndpoint = client.apiEndpoint; - assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); - }); - - it('has universeDomain', () => { - const client = new domainsModule.v1alpha2.DomainsClient(); - const universeDomain = client.universeDomain; - assert.strictEqual(universeDomain, "googleapis.com"); - }); - - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - it('throws DeprecationWarning if static servicePath is used', () => { - const stub = sinon.stub(process, 'emitWarning'); - const servicePath = domainsModule.v1alpha2.DomainsClient.servicePath; - assert.strictEqual(servicePath, 'domains.googleapis.com'); - assert(stub.called); - stub.restore(); - }); - - it('throws DeprecationWarning if static apiEndpoint is used', () => { - const stub = sinon.stub(process, 'emitWarning'); - const apiEndpoint = domainsModule.v1alpha2.DomainsClient.apiEndpoint; - assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); - assert(stub.called); - stub.restore(); - }); - } - it('sets apiEndpoint according to universe domain camelCase', () => { - const client = new domainsModule.v1alpha2.DomainsClient({universeDomain: 'example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.example.com'); - }); - - it('sets apiEndpoint according to universe domain snakeCase', () => { - const client = new domainsModule.v1alpha2.DomainsClient({universe_domain: 'example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.example.com'); - }); - - if (typeof process === 'object' && 'env' in process) { - describe('GOOGLE_CLOUD_UNIVERSE_DOMAIN environment variable', () => { - it('sets apiEndpoint from environment variable', () => { - const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; - const client = new domainsModule.v1alpha2.DomainsClient(); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.example.com'); - if (saved) { - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; - } else { - delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - } - }); - - it('value configured in code has priority over environment variable', () => { - const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; - const client = new domainsModule.v1alpha2.DomainsClient({universeDomain: 'configured.example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.configured.example.com'); - if (saved) { - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; - } else { - delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - } - }); - }); - } - it('does not allow setting both universeDomain and universe_domain', () => { - assert.throws(() => { new domainsModule.v1alpha2.DomainsClient({universe_domain: 'example.com', universeDomain: 'example.net'}); }); - }); - - it('has port', () => { - const port = domainsModule.v1alpha2.DomainsClient.port; - assert(port); - assert(typeof port === 'number'); - }); - - it('should create a client with no option', () => { - const client = new domainsModule.v1alpha2.DomainsClient(); - assert(client); - }); - - it('should create a client with gRPC fallback', () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - fallback: true, - }); - assert(client); - }); - - it('has initialize method and supports deferred initialization', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - assert.strictEqual(client.domainsStub, undefined); - await client.initialize(); - assert(client.domainsStub); - }); - - it('has close method for the initialized client', done => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.initialize().catch(err => {throw err}); - assert(client.domainsStub); - client.close().then(() => { - done(); - }).catch(err => {throw err}); - }); - - it('has close method for the non-initialized client', done => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - assert.strictEqual(client.domainsStub, undefined); - client.close().then(() => { - done(); - }).catch(err => {throw err}); - }); - - it('has getProjectId method', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); - const result = await client.getProjectId(); - assert.strictEqual(result, fakeProjectId); - assert((client.auth.getProjectId as SinonStub).calledWithExactly()); - }); - - it('has getProjectId method with callback', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.auth.getProjectId = sinon.stub().callsArgWith(0, null, fakeProjectId); - const promise = new Promise((resolve, reject) => { - client.getProjectId((err?: Error|null, projectId?: string|null) => { - if (err) { - reject(err); - } else { - resolve(projectId); - } - }); - }); - const result = await promise; - assert.strictEqual(result, fakeProjectId); - }); + describe('Common methods', () => { + it('has apiEndpoint', () => { + const client = new domainsModule.v1alpha2.DomainsClient(); + const apiEndpoint = client.apiEndpoint; + assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); }); - describe('searchDomains', () => { - it('invokes searchDomains without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.SearchDomainsResponse() - ); - client.innerApiCalls.searchDomains = stubSimpleCall(expectedResponse); - const [response] = await client.searchDomains(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes searchDomains without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.SearchDomainsResponse() - ); - client.innerApiCalls.searchDomains = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.searchDomains( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes searchDomains with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.searchDomains = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.searchDomains(request), expectedError); - const actualRequest = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes searchDomains with closed client', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.searchDomains(request), expectedError); - }); + it('has universeDomain', () => { + const client = new domainsModule.v1alpha2.DomainsClient(); + const universeDomain = client.universeDomain; + assert.strictEqual(universeDomain, 'googleapis.com'); }); - describe('retrieveRegisterParameters', () => { - it('invokes retrieveRegisterParameters without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersResponse() - ); - client.innerApiCalls.retrieveRegisterParameters = stubSimpleCall(expectedResponse); - const [response] = await client.retrieveRegisterParameters(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes retrieveRegisterParameters without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersResponse() - ); - client.innerApiCalls.retrieveRegisterParameters = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.retrieveRegisterParameters( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + it('throws DeprecationWarning if static servicePath is used', () => { + const stub = sinon.stub(process, 'emitWarning'); + const servicePath = domainsModule.v1alpha2.DomainsClient.servicePath; + assert.strictEqual(servicePath, 'domains.googleapis.com'); + assert(stub.called); + stub.restore(); + }); + + it('throws DeprecationWarning if static apiEndpoint is used', () => { + const stub = sinon.stub(process, 'emitWarning'); + const apiEndpoint = domainsModule.v1alpha2.DomainsClient.apiEndpoint; + assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); + assert(stub.called); + stub.restore(); + }); + } + it('sets apiEndpoint according to universe domain camelCase', () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + universeDomain: 'example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.example.com'); + }); - it('invokes retrieveRegisterParameters with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.retrieveRegisterParameters = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.retrieveRegisterParameters(request), expectedError); - const actualRequest = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('sets apiEndpoint according to universe domain snakeCase', () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + universe_domain: 'example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.example.com'); + }); - it('invokes retrieveRegisterParameters with closed client', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.retrieveRegisterParameters(request), expectedError); + if (typeof process === 'object' && 'env' in process) { + describe('GOOGLE_CLOUD_UNIVERSE_DOMAIN environment variable', () => { + it('sets apiEndpoint from environment variable', () => { + const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; + const client = new domainsModule.v1alpha2.DomainsClient(); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.example.com'); + if (saved) { + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; + } else { + delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + } + }); + + it('value configured in code has priority over environment variable', () => { + const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; + const client = new domainsModule.v1alpha2.DomainsClient({ + universeDomain: 'configured.example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.configured.example.com'); + if (saved) { + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; + } else { + delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + } + }); + }); + } + it('does not allow setting both universeDomain and universe_domain', () => { + assert.throws(() => { + new domainsModule.v1alpha2.DomainsClient({ + universe_domain: 'example.com', + universeDomain: 'example.net', }); + }); }); - describe('retrieveTransferParameters', () => { - it('invokes retrieveTransferParameters without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersResponse() - ); - client.innerApiCalls.retrieveTransferParameters = stubSimpleCall(expectedResponse); - const [response] = await client.retrieveTransferParameters(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('has port', () => { + const port = domainsModule.v1alpha2.DomainsClient.port; + assert(port); + assert(typeof port === 'number'); + }); - it('invokes retrieveTransferParameters without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersResponse() - ); - client.innerApiCalls.retrieveTransferParameters = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.retrieveTransferParameters( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('should create a client with no option', () => { + const client = new domainsModule.v1alpha2.DomainsClient(); + assert(client); + }); - it('invokes retrieveTransferParameters with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.retrieveTransferParameters = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.retrieveTransferParameters(request), expectedError); - const actualRequest = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('should create a client with gRPC fallback', () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + fallback: true, + }); + assert(client); + }); - it('invokes retrieveTransferParameters with closed client', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.retrieveTransferParameters(request), expectedError); - }); + it('has initialize method and supports deferred initialization', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + assert.strictEqual(client.domainsStub, undefined); + await client.initialize(); + assert(client.domainsStub); }); - describe('getRegistration', () => { - it('invokes getRegistration without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.Registration() - ); - client.innerApiCalls.getRegistration = stubSimpleCall(expectedResponse); - const [response] = await client.getRegistration(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + it('has close method for the initialized client', (done) => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.initialize().catch((err) => { + throw err; + }); + assert(client.domainsStub); + client + .close() + .then(() => { + done(); + }) + .catch((err) => { + throw err; }); + }); - it('invokes getRegistration without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.Registration() - ); - client.innerApiCalls.getRegistration = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.getRegistration( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1alpha2.IRegistration|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + it('has close method for the non-initialized client', (done) => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + assert.strictEqual(client.domainsStub, undefined); + client + .close() + .then(() => { + done(); + }) + .catch((err) => { + throw err; }); + }); - it('invokes getRegistration with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.getRegistration = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.getRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); - it('invokes getRegistration with closed client', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.getRegistration(request), expectedError); - }); + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + }); + + describe('searchDomains', () => { + it('invokes searchDomains without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.SearchDomainsResponse(), + ); + client.innerApiCalls.searchDomains = stubSimpleCall(expectedResponse); + const [response] = await client.searchDomains(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('retrieveAuthorizationCode', () => { - it('invokes retrieveAuthorizationCode without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.AuthorizationCode() - ); - client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCall(expectedResponse); - const [response] = await client.retrieveAuthorizationCode(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes searchDomains without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.SearchDomainsResponse(), + ); + client.innerApiCalls.searchDomains = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.searchDomains( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1alpha2.ISearchDomainsResponse | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes retrieveAuthorizationCode without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.AuthorizationCode() - ); - client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.retrieveAuthorizationCode( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1alpha2.IAuthorizationCode|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes searchDomains with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.searchDomains = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.searchDomains(request), expectedError); + const actualRequest = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes retrieveAuthorizationCode with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.retrieveAuthorizationCode(request), expectedError); - const actualRequest = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes searchDomains with closed client', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.searchDomains(request), expectedError); + }); + }); + + describe('retrieveRegisterParameters', () => { + it('invokes retrieveRegisterParameters without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersResponse(), + ); + client.innerApiCalls.retrieveRegisterParameters = + stubSimpleCall(expectedResponse); + const [response] = await client.retrieveRegisterParameters(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes retrieveAuthorizationCode with closed client', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.retrieveAuthorizationCode(request), expectedError); - }); + it('invokes retrieveRegisterParameters without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersResponse(), + ); + client.innerApiCalls.retrieveRegisterParameters = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.retrieveRegisterParameters( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1alpha2.IRetrieveRegisterParametersResponse | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('resetAuthorizationCode', () => { - it('invokes resetAuthorizationCode without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.AuthorizationCode() - ); - client.innerApiCalls.resetAuthorizationCode = stubSimpleCall(expectedResponse); - const [response] = await client.resetAuthorizationCode(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveRegisterParameters with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.retrieveRegisterParameters = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.retrieveRegisterParameters(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes resetAuthorizationCode without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.AuthorizationCode() - ); - client.innerApiCalls.resetAuthorizationCode = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.resetAuthorizationCode( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1alpha2.IAuthorizationCode|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveRegisterParameters with closed client', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.retrieveRegisterParameters(request), + expectedError, + ); + }); + }); + + describe('retrieveTransferParameters', () => { + it('invokes retrieveTransferParameters without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersResponse(), + ); + client.innerApiCalls.retrieveTransferParameters = + stubSimpleCall(expectedResponse); + const [response] = await client.retrieveTransferParameters(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes resetAuthorizationCode with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.resetAuthorizationCode = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.resetAuthorizationCode(request), expectedError); - const actualRequest = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveTransferParameters without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersResponse(), + ); + client.innerApiCalls.retrieveTransferParameters = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.retrieveTransferParameters( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1alpha2.IRetrieveTransferParametersResponse | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes resetAuthorizationCode with closed client', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.resetAuthorizationCode(request), expectedError); - }); + it('invokes retrieveTransferParameters with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.retrieveTransferParameters = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.retrieveTransferParameters(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('registerDomain', () => { - it('invokes registerDomain without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.registerDomain = stubLongRunningCall(expectedResponse); - const [operation] = await client.registerDomain(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveTransferParameters with closed client', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.retrieveTransferParameters(request), + expectedError, + ); + }); + }); + + describe('getRegistration', () => { + it('invokes getRegistration without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ); + client.innerApiCalls.getRegistration = stubSimpleCall(expectedResponse); + const [response] = await client.getRegistration(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes registerDomain without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.registerDomain = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.registerDomain( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getRegistration without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ); + client.innerApiCalls.getRegistration = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getRegistration( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1alpha2.IRegistration | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes registerDomain with call error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.registerDomain = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.registerDomain(request), expectedError); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getRegistration with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.getRegistration = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.getRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes registerDomain with LRO error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.registerDomain = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.registerDomain(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getRegistration with closed client', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.getRegistration(request), expectedError); + }); + }); + + describe('retrieveAuthorizationCode', () => { + it('invokes retrieveAuthorizationCode without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.AuthorizationCode(), + ); + client.innerApiCalls.retrieveAuthorizationCode = + stubSimpleCall(expectedResponse); + const [response] = await client.retrieveAuthorizationCode(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkRegisterDomainProgress without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkRegisterDomainProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes retrieveAuthorizationCode without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.AuthorizationCode(), + ); + client.innerApiCalls.retrieveAuthorizationCode = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.retrieveAuthorizationCode( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1alpha2.IAuthorizationCode | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkRegisterDomainProgress with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkRegisterDomainProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes retrieveAuthorizationCode with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.retrieveAuthorizationCode(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('transferDomain', () => { - it('invokes transferDomain without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.transferDomain = stubLongRunningCall(expectedResponse); - const [operation] = await client.transferDomain(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveAuthorizationCode with closed client', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.retrieveAuthorizationCode(request), + expectedError, + ); + }); + }); + + describe('resetAuthorizationCode', () => { + it('invokes resetAuthorizationCode without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.AuthorizationCode(), + ); + client.innerApiCalls.resetAuthorizationCode = + stubSimpleCall(expectedResponse); + const [response] = await client.resetAuthorizationCode(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes transferDomain without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.transferDomain = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.transferDomain( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes resetAuthorizationCode without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.AuthorizationCode(), + ); + client.innerApiCalls.resetAuthorizationCode = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.resetAuthorizationCode( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1alpha2.IAuthorizationCode | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes transferDomain with call error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.transferDomain = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.transferDomain(request), expectedError); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes resetAuthorizationCode with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.resetAuthorizationCode = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.resetAuthorizationCode(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes transferDomain with LRO error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.transferDomain = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.transferDomain(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes resetAuthorizationCode with closed client', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.resetAuthorizationCode(request), + expectedError, + ); + }); + }); + + describe('registerDomain', () => { + it('invokes registerDomain without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.registerDomain = + stubLongRunningCall(expectedResponse); + const [operation] = await client.registerDomain(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkTransferDomainProgress without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkTransferDomainProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes registerDomain without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.registerDomain = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.registerDomain( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkTransferDomainProgress with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkTransferDomainProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes registerDomain with call error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.registerDomain = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.registerDomain(request), expectedError); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('updateRegistration', () => { - it('invokes updateRegistration without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.updateRegistration = stubLongRunningCall(expectedResponse); - const [operation] = await client.updateRegistration(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes registerDomain with LRO error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.registerDomain = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.registerDomain(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateRegistration without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.updateRegistration = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.updateRegistration( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkRegisterDomainProgress without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkRegisterDomainProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes updateRegistration with call error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.updateRegistration = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.updateRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkRegisterDomainProgress with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkRegisterDomainProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('transferDomain', () => { + it('invokes transferDomain without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.transferDomain = + stubLongRunningCall(expectedResponse); + const [operation] = await client.transferDomain(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateRegistration with LRO error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.updateRegistration = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.updateRegistration(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes transferDomain without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.transferDomain = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.transferDomain( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkUpdateRegistrationProgress without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkUpdateRegistrationProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes transferDomain with call error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.transferDomain = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.transferDomain(request), expectedError); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkUpdateRegistrationProgress with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkUpdateRegistrationProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes transferDomain with LRO error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.transferDomain = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.transferDomain(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('configureManagementSettings', () => { - it('invokes configureManagementSettings without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureManagementSettings = stubLongRunningCall(expectedResponse); - const [operation] = await client.configureManagementSettings(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkTransferDomainProgress without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkTransferDomainProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes configureManagementSettings without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureManagementSettings = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.configureManagementSettings( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkTransferDomainProgress with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkTransferDomainProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('updateRegistration', () => { + it('invokes updateRegistration without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.updateRegistration = + stubLongRunningCall(expectedResponse); + const [operation] = await client.updateRegistration(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureManagementSettings with call error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureManagementSettings = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.configureManagementSettings(request), expectedError); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes updateRegistration without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.updateRegistration = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updateRegistration( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureManagementSettings with LRO error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureManagementSettings = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.configureManagementSettings(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes updateRegistration with call error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.updateRegistration = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.updateRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureManagementSettingsProgress without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkConfigureManagementSettingsProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes updateRegistration with LRO error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.updateRegistration = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.updateRegistration(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureManagementSettingsProgress with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkConfigureManagementSettingsProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes checkUpdateRegistrationProgress without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkUpdateRegistrationProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); }); - describe('configureDnsSettings', () => { - it('invokes configureDnsSettings without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureDnsSettings = stubLongRunningCall(expectedResponse); - const [operation] = await client.configureDnsSettings(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkUpdateRegistrationProgress with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkUpdateRegistrationProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('configureManagementSettings', () => { + it('invokes configureManagementSettings without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureManagementSettings = + stubLongRunningCall(expectedResponse); + const [operation] = await client.configureManagementSettings(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureDnsSettings without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureDnsSettings = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.configureDnsSettings( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureManagementSettings without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureManagementSettings = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.configureManagementSettings( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureDnsSettings with call error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureDnsSettings = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.configureDnsSettings(request), expectedError); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureManagementSettings with call error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureManagementSettings = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects( + client.configureManagementSettings(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureDnsSettings with LRO error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureDnsSettings = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.configureDnsSettings(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureManagementSettings with LRO error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureManagementSettings = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.configureManagementSettings(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureDnsSettingsProgress without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkConfigureDnsSettingsProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes checkConfigureManagementSettingsProgress without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = + await client.checkConfigureManagementSettingsProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes checkConfigureDnsSettingsProgress with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkConfigureDnsSettingsProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes checkConfigureManagementSettingsProgress with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkConfigureManagementSettingsProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('configureDnsSettings', () => { + it('invokes configureDnsSettings without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureDnsSettings = + stubLongRunningCall(expectedResponse); + const [operation] = await client.configureDnsSettings(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('configureContactSettings', () => { - it('invokes configureContactSettings without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureContactSettings = stubLongRunningCall(expectedResponse); - const [operation] = await client.configureContactSettings(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureDnsSettings without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureDnsSettings = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.configureDnsSettings( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureContactSettings without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureContactSettings = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.configureContactSettings( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureDnsSettings with call error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureDnsSettings = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.configureDnsSettings(request), expectedError); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureContactSettings with call error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureContactSettings = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.configureContactSettings(request), expectedError); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureDnsSettings with LRO error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureDnsSettings = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.configureDnsSettings(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureContactSettings with LRO error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureContactSettings = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.configureContactSettings(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkConfigureDnsSettingsProgress without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkConfigureDnsSettingsProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes checkConfigureContactSettingsProgress without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkConfigureContactSettingsProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes checkConfigureDnsSettingsProgress with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkConfigureDnsSettingsProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('configureContactSettings', () => { + it('invokes configureContactSettings without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureContactSettings = + stubLongRunningCall(expectedResponse); + const [operation] = await client.configureContactSettings(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureContactSettingsProgress with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkConfigureContactSettingsProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes configureContactSettings without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureContactSettings = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.configureContactSettings( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('exportRegistration', () => { - it('invokes exportRegistration without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.exportRegistration = stubLongRunningCall(expectedResponse); - const [operation] = await client.exportRegistration(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureContactSettings with call error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureContactSettings = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects( + client.configureContactSettings(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes exportRegistration without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.exportRegistration = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.exportRegistration( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureContactSettings with LRO error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureContactSettings = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.configureContactSettings(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes exportRegistration with call error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.exportRegistration = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.exportRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkConfigureContactSettingsProgress without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = + await client.checkConfigureContactSettingsProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes exportRegistration with LRO error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.exportRegistration = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.exportRegistration(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkConfigureContactSettingsProgress with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkConfigureContactSettingsProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('exportRegistration', () => { + it('invokes exportRegistration without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.exportRegistration = + stubLongRunningCall(expectedResponse); + const [operation] = await client.exportRegistration(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkExportRegistrationProgress without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkExportRegistrationProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes exportRegistration without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.exportRegistration = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.exportRegistration( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1alpha2.IRegistration, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkExportRegistrationProgress with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkExportRegistrationProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes exportRegistration with call error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.exportRegistration = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.exportRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('deleteRegistration', () => { - it('invokes deleteRegistration without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.deleteRegistration = stubLongRunningCall(expectedResponse); - const [operation] = await client.deleteRegistration(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes exportRegistration with LRO error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.exportRegistration = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.exportRegistration(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes deleteRegistration without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.deleteRegistration = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.deleteRegistration( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkExportRegistrationProgress without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkExportRegistrationProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes deleteRegistration with call error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.deleteRegistration = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.deleteRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkExportRegistrationProgress with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkExportRegistrationProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('deleteRegistration', () => { + it('invokes deleteRegistration without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.deleteRegistration = + stubLongRunningCall(expectedResponse); + const [operation] = await client.deleteRegistration(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes deleteRegistration with LRO error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.deleteRegistration = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.deleteRegistration(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes deleteRegistration without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.deleteRegistration = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.deleteRegistration( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1alpha2.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkDeleteRegistrationProgress without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkDeleteRegistrationProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes deleteRegistration with call error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteRegistration = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.deleteRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkDeleteRegistrationProgress with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkDeleteRegistrationProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes deleteRegistration with LRO error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteRegistration = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.deleteRegistration(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('listRegistrations', () => { - it('invokes listRegistrations without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - ]; - client.innerApiCalls.listRegistrations = stubSimpleCall(expectedResponse); - const [response] = await client.listRegistrations(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkDeleteRegistrationProgress without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkDeleteRegistrationProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes listRegistrations without error using callback', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - ]; - client.innerApiCalls.listRegistrations = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.listRegistrations( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1alpha2.IRegistration[]|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkDeleteRegistrationProgress with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkDeleteRegistrationProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('listRegistrations', () => { + it('invokes listRegistrations without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + ]; + client.innerApiCalls.listRegistrations = stubSimpleCall(expectedResponse); + const [response] = await client.listRegistrations(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listRegistrations with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.listRegistrations = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.listRegistrations(request), expectedError); - const actualRequest = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes listRegistrations without error using callback', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + ]; + client.innerApiCalls.listRegistrations = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listRegistrations( + request, + ( + err?: Error | null, + result?: + | protos.google.cloud.domains.v1alpha2.IRegistration[] + | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listRegistrationsStream without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - ]; - client.descriptors.page.listRegistrations.createStream = stubPageStreamingCall(expectedResponse); - const stream = client.listRegistrationsStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.google.cloud.domains.v1alpha2.Registration[] = []; - stream.on('data', (response: protos.google.cloud.domains.v1alpha2.Registration) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - const responses = await promise; - assert.deepStrictEqual(responses, expectedResponse); - assert((client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listRegistrations, request)); - assert( - (client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listRegistrations with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.listRegistrations = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.listRegistrations(request), expectedError); + const actualRequest = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listRegistrationsStream with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listRegistrations.createStream = stubPageStreamingCall(undefined, expectedError); - const stream = client.listRegistrationsStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.google.cloud.domains.v1alpha2.Registration[] = []; - stream.on('data', (response: protos.google.cloud.domains.v1alpha2.Registration) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - await assert.rejects(promise, expectedError); - assert((client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listRegistrations, request)); - assert( - (client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listRegistrationsStream without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + ]; + client.descriptors.page.listRegistrations.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listRegistrationsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.domains.v1alpha2.Registration[] = + []; + stream.on( + 'data', + (response: protos.google.cloud.domains.v1alpha2.Registration) => { + responses.push(response); + }, + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listRegistrations, request), + ); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('uses async iteration with listRegistrations without error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1alpha2.Registration()), - ]; - client.descriptors.page.listRegistrations.asyncIterate = stubAsyncIterationCall(expectedResponse); - const responses: protos.google.cloud.domains.v1alpha2.IRegistration[] = []; - const iterable = client.listRegistrationsAsync(request); - for await (const resource of iterable) { - responses.push(resource!); - } - assert.deepStrictEqual(responses, expectedResponse); - assert.deepStrictEqual( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listRegistrationsStream with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listRegistrations.createStream = + stubPageStreamingCall(undefined, expectedError); + const stream = client.listRegistrationsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.domains.v1alpha2.Registration[] = + []; + stream.on( + 'data', + (response: protos.google.cloud.domains.v1alpha2.Registration) => { + responses.push(response); + }, + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listRegistrations, request), + ); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('uses async iteration with listRegistrations with error', async () => { - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1alpha2.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listRegistrations.asyncIterate = stubAsyncIterationCall(undefined, expectedError); - const iterable = client.listRegistrationsAsync(request); - await assert.rejects(async () => { - const responses: protos.google.cloud.domains.v1alpha2.IRegistration[] = []; - for await (const resource of iterable) { - responses.push(resource!); - } - }); - assert.deepStrictEqual( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('uses async iteration with listRegistrations without error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.Registration(), + ), + ]; + client.descriptors.page.listRegistrations.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.google.cloud.domains.v1alpha2.IRegistration[] = + []; + const iterable = client.listRegistrationsAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.descriptors.page.listRegistrations.asyncIterate as SinonStub + ).getCall(0).args[1], + request, + ); + assert( + (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); }); - describe('Path templates', () => { - - describe('location', async () => { - const fakePath = "/rendered/path/location"; - const expectedParameters = { - project: "projectValue", - location: "locationValue", - }; - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - client.pathTemplates.locationPathTemplate.render = - sinon.stub().returns(fakePath); - client.pathTemplates.locationPathTemplate.match = - sinon.stub().returns(expectedParameters); - - it('locationPath', () => { - const result = client.locationPath("projectValue", "locationValue"); - assert.strictEqual(result, fakePath); - assert((client.pathTemplates.locationPathTemplate.render as SinonStub) - .getCall(-1).calledWith(expectedParameters)); - }); - - it('matchProjectFromLocationName', () => { - const result = client.matchProjectFromLocationName(fakePath); - assert.strictEqual(result, "projectValue"); - assert((client.pathTemplates.locationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - - it('matchLocationFromLocationName', () => { - const result = client.matchLocationFromLocationName(fakePath); - assert.strictEqual(result, "locationValue"); - assert((client.pathTemplates.locationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - }); + it('uses async iteration with listRegistrations with error', async () => { + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1alpha2.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1alpha2.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listRegistrations.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listRegistrationsAsync(request); + await assert.rejects(async () => { + const responses: protos.google.cloud.domains.v1alpha2.IRegistration[] = + []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.descriptors.page.listRegistrations.asyncIterate as SinonStub + ).getCall(0).args[1], + request, + ); + assert( + (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); + }); + + describe('Path templates', () => { + describe('location', async () => { + const fakePath = '/rendered/path/location'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + }; + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + client.pathTemplates.locationPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.locationPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('locationPath', () => { + const result = client.locationPath('projectValue', 'locationValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.locationPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters), + ); + }); + + it('matchProjectFromLocationName', () => { + const result = client.matchProjectFromLocationName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + + it('matchLocationFromLocationName', () => { + const result = client.matchLocationFromLocationName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + }); - describe('registration', async () => { - const fakePath = "/rendered/path/registration"; - const expectedParameters = { - project: "projectValue", - location: "locationValue", - registration: "registrationValue", - }; - const client = new domainsModule.v1alpha2.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - client.pathTemplates.registrationPathTemplate.render = - sinon.stub().returns(fakePath); - client.pathTemplates.registrationPathTemplate.match = - sinon.stub().returns(expectedParameters); - - it('registrationPath', () => { - const result = client.registrationPath("projectValue", "locationValue", "registrationValue"); - assert.strictEqual(result, fakePath); - assert((client.pathTemplates.registrationPathTemplate.render as SinonStub) - .getCall(-1).calledWith(expectedParameters)); - }); - - it('matchProjectFromRegistrationName', () => { - const result = client.matchProjectFromRegistrationName(fakePath); - assert.strictEqual(result, "projectValue"); - assert((client.pathTemplates.registrationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - - it('matchLocationFromRegistrationName', () => { - const result = client.matchLocationFromRegistrationName(fakePath); - assert.strictEqual(result, "locationValue"); - assert((client.pathTemplates.registrationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - - it('matchRegistrationFromRegistrationName', () => { - const result = client.matchRegistrationFromRegistrationName(fakePath); - assert.strictEqual(result, "registrationValue"); - assert((client.pathTemplates.registrationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - }); + describe('registration', async () => { + const fakePath = '/rendered/path/registration'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + registration: 'registrationValue', + }; + const client = new domainsModule.v1alpha2.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + client.pathTemplates.registrationPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.registrationPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('registrationPath', () => { + const result = client.registrationPath( + 'projectValue', + 'locationValue', + 'registrationValue', + ); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.registrationPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters), + ); + }); + + it('matchProjectFromRegistrationName', () => { + const result = client.matchProjectFromRegistrationName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.registrationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + + it('matchLocationFromRegistrationName', () => { + const result = client.matchLocationFromRegistrationName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.registrationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + + it('matchRegistrationFromRegistrationName', () => { + const result = client.matchRegistrationFromRegistrationName(fakePath); + assert.strictEqual(result, 'registrationValue'); + assert( + (client.pathTemplates.registrationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); }); + }); }); diff --git a/packages/google-cloud-domains/test/gapic_domains_v1beta1.ts b/packages/google-cloud-domains/test/gapic_domains_v1beta1.ts index ae2a01115682..a6ac5c7460d0 100644 --- a/packages/google-cloud-domains/test/gapic_domains_v1beta1.ts +++ b/packages/google-cloud-domains/test/gapic_domains_v1beta1.ts @@ -19,2475 +19,3158 @@ import * as protos from '../protos/protos'; import * as assert from 'assert'; import * as sinon from 'sinon'; -import {SinonStub} from 'sinon'; -import {describe, it} from 'mocha'; +import { SinonStub } from 'sinon'; +import { describe, it } from 'mocha'; import * as domainsModule from '../src'; -import {PassThrough} from 'stream'; +import { PassThrough } from 'stream'; -import {protobuf, LROperation, operationsProtos} from 'google-gax'; +import { protobuf, LROperation, operationsProtos } from 'google-gax'; // Dynamically loaded proto JSON is needed to get the type information // to fill in default values for request objects -const root = protobuf.Root.fromJSON(require('../protos/protos.json')).resolveAll(); +const root = protobuf.Root.fromJSON( + require('../protos/protos.json'), +).resolveAll(); // eslint-disable-next-line @typescript-eslint/no-unused-vars function getTypeDefaultValue(typeName: string, fields: string[]) { - let type = root.lookupType(typeName) as protobuf.Type; - for (const field of fields.slice(0, -1)) { - type = type.fields[field]?.resolvedType as protobuf.Type; - } - return type.fields[fields[fields.length - 1]]?.defaultValue; + let type = root.lookupType(typeName) as protobuf.Type; + for (const field of fields.slice(0, -1)) { + type = type.fields[field]?.resolvedType as protobuf.Type; + } + return type.fields[fields[fields.length - 1]]?.defaultValue; } function generateSampleMessage(instance: T) { - const filledObject = (instance.constructor as typeof protobuf.Message) - .toObject(instance as protobuf.Message, {defaults: true}); - return (instance.constructor as typeof protobuf.Message).fromObject(filledObject) as T; + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, { defaults: true }); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject, + ) as T; } function stubSimpleCall(response?: ResponseType, error?: Error) { - return error ? sinon.stub().rejects(error) : sinon.stub().resolves([response]); + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); } -function stubSimpleCallWithCallback(response?: ResponseType, error?: Error) { - return error ? sinon.stub().callsArgWith(2, error) : sinon.stub().callsArgWith(2, null, response); +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error, +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); } -function stubLongRunningCall(response?: ResponseType, callError?: Error, lroError?: Error) { - const innerStub = lroError ? sinon.stub().rejects(lroError) : sinon.stub().resolves([response]); - const mockOperation = { - promise: innerStub, - }; - return callError ? sinon.stub().rejects(callError) : sinon.stub().resolves([mockOperation]); +function stubLongRunningCall( + response?: ResponseType, + callError?: Error, + lroError?: Error, +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().rejects(callError) + : sinon.stub().resolves([mockOperation]); } -function stubLongRunningCallWithCallback(response?: ResponseType, callError?: Error, lroError?: Error) { - const innerStub = lroError ? sinon.stub().rejects(lroError) : sinon.stub().resolves([response]); - const mockOperation = { - promise: innerStub, - }; - return callError ? sinon.stub().callsArgWith(2, callError) : sinon.stub().callsArgWith(2, null, mockOperation); +function stubLongRunningCallWithCallback( + response?: ResponseType, + callError?: Error, + lroError?: Error, +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().callsArgWith(2, callError) + : sinon.stub().callsArgWith(2, null, mockOperation); } -function stubPageStreamingCall(responses?: ResponseType[], error?: Error) { - const pagingStub = sinon.stub(); - if (responses) { - for (let i = 0; i < responses.length; ++i) { - pagingStub.onCall(i).callsArgWith(2, null, responses[i]); - } +function stubPageStreamingCall( + responses?: ResponseType[], + error?: Error, +) { + const pagingStub = sinon.stub(); + if (responses) { + for (let i = 0; i < responses.length; ++i) { + pagingStub.onCall(i).callsArgWith(2, null, responses[i]); } - const transformStub = error ? sinon.stub().callsArgWith(2, error) : pagingStub; - const mockStream = new PassThrough({ - objectMode: true, - transform: transformStub, - }); - // trigger as many responses as needed - if (responses) { - for (let i = 0; i < responses.length; ++i) { - setImmediate(() => { mockStream.write({}); }); - } - setImmediate(() => { mockStream.end(); }); - } else { - setImmediate(() => { mockStream.write({}); }); - setImmediate(() => { mockStream.end(); }); + } + const transformStub = error + ? sinon.stub().callsArgWith(2, error) + : pagingStub; + const mockStream = new PassThrough({ + objectMode: true, + transform: transformStub, + }); + // trigger as many responses as needed + if (responses) { + for (let i = 0; i < responses.length; ++i) { + setImmediate(() => { + mockStream.write({}); + }); } - return sinon.stub().returns(mockStream); + setImmediate(() => { + mockStream.end(); + }); + } else { + setImmediate(() => { + mockStream.write({}); + }); + setImmediate(() => { + mockStream.end(); + }); + } + return sinon.stub().returns(mockStream); } -function stubAsyncIterationCall(responses?: ResponseType[], error?: Error) { - let counter = 0; - const asyncIterable = { - [Symbol.asyncIterator]() { - return { - async next() { - if (error) { - return Promise.reject(error); - } - if (counter >= responses!.length) { - return Promise.resolve({done: true, value: undefined}); - } - return Promise.resolve({done: false, value: responses![counter++]}); - } - }; - } - }; - return sinon.stub().returns(asyncIterable); +function stubAsyncIterationCall( + responses?: ResponseType[], + error?: Error, +) { + let counter = 0; + const asyncIterable = { + [Symbol.asyncIterator]() { + return { + async next() { + if (error) { + return Promise.reject(error); + } + if (counter >= responses!.length) { + return Promise.resolve({ done: true, value: undefined }); + } + return Promise.resolve({ done: false, value: responses![counter++] }); + }, + }; + }, + }; + return sinon.stub().returns(asyncIterable); } describe('v1beta1.DomainsClient', () => { - describe('Common methods', () => { - it('has apiEndpoint', () => { - const client = new domainsModule.v1beta1.DomainsClient(); - const apiEndpoint = client.apiEndpoint; - assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); - }); - - it('has universeDomain', () => { - const client = new domainsModule.v1beta1.DomainsClient(); - const universeDomain = client.universeDomain; - assert.strictEqual(universeDomain, "googleapis.com"); - }); - - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - it('throws DeprecationWarning if static servicePath is used', () => { - const stub = sinon.stub(process, 'emitWarning'); - const servicePath = domainsModule.v1beta1.DomainsClient.servicePath; - assert.strictEqual(servicePath, 'domains.googleapis.com'); - assert(stub.called); - stub.restore(); - }); - - it('throws DeprecationWarning if static apiEndpoint is used', () => { - const stub = sinon.stub(process, 'emitWarning'); - const apiEndpoint = domainsModule.v1beta1.DomainsClient.apiEndpoint; - assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); - assert(stub.called); - stub.restore(); - }); - } - it('sets apiEndpoint according to universe domain camelCase', () => { - const client = new domainsModule.v1beta1.DomainsClient({universeDomain: 'example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.example.com'); - }); - - it('sets apiEndpoint according to universe domain snakeCase', () => { - const client = new domainsModule.v1beta1.DomainsClient({universe_domain: 'example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.example.com'); - }); - - if (typeof process === 'object' && 'env' in process) { - describe('GOOGLE_CLOUD_UNIVERSE_DOMAIN environment variable', () => { - it('sets apiEndpoint from environment variable', () => { - const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; - const client = new domainsModule.v1beta1.DomainsClient(); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.example.com'); - if (saved) { - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; - } else { - delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - } - }); - - it('value configured in code has priority over environment variable', () => { - const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; - const client = new domainsModule.v1beta1.DomainsClient({universeDomain: 'configured.example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'domains.configured.example.com'); - if (saved) { - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; - } else { - delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - } - }); - }); - } - it('does not allow setting both universeDomain and universe_domain', () => { - assert.throws(() => { new domainsModule.v1beta1.DomainsClient({universe_domain: 'example.com', universeDomain: 'example.net'}); }); - }); - - it('has port', () => { - const port = domainsModule.v1beta1.DomainsClient.port; - assert(port); - assert(typeof port === 'number'); - }); - - it('should create a client with no option', () => { - const client = new domainsModule.v1beta1.DomainsClient(); - assert(client); - }); - - it('should create a client with gRPC fallback', () => { - const client = new domainsModule.v1beta1.DomainsClient({ - fallback: true, - }); - assert(client); - }); - - it('has initialize method and supports deferred initialization', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - assert.strictEqual(client.domainsStub, undefined); - await client.initialize(); - assert(client.domainsStub); - }); - - it('has close method for the initialized client', done => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.initialize().catch(err => {throw err}); - assert(client.domainsStub); - client.close().then(() => { - done(); - }).catch(err => {throw err}); - }); - - it('has close method for the non-initialized client', done => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - assert.strictEqual(client.domainsStub, undefined); - client.close().then(() => { - done(); - }).catch(err => {throw err}); - }); - - it('has getProjectId method', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); - const result = await client.getProjectId(); - assert.strictEqual(result, fakeProjectId); - assert((client.auth.getProjectId as SinonStub).calledWithExactly()); - }); - - it('has getProjectId method with callback', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.auth.getProjectId = sinon.stub().callsArgWith(0, null, fakeProjectId); - const promise = new Promise((resolve, reject) => { - client.getProjectId((err?: Error|null, projectId?: string|null) => { - if (err) { - reject(err); - } else { - resolve(projectId); - } - }); - }); - const result = await promise; - assert.strictEqual(result, fakeProjectId); - }); + describe('Common methods', () => { + it('has apiEndpoint', () => { + const client = new domainsModule.v1beta1.DomainsClient(); + const apiEndpoint = client.apiEndpoint; + assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); }); - describe('searchDomains', () => { - it('invokes searchDomains without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.SearchDomainsResponse() - ); - client.innerApiCalls.searchDomains = stubSimpleCall(expectedResponse); - const [response] = await client.searchDomains(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes searchDomains without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.SearchDomainsResponse() - ); - client.innerApiCalls.searchDomains = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.searchDomains( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1beta1.ISearchDomainsResponse|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes searchDomains with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.searchDomains = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.searchDomains(request), expectedError); - const actualRequest = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.searchDomains as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes searchDomains with closed client', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.SearchDomainsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.SearchDomainsRequest', ['location']); - request.location = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.searchDomains(request), expectedError); - }); + it('has universeDomain', () => { + const client = new domainsModule.v1beta1.DomainsClient(); + const universeDomain = client.universeDomain; + assert.strictEqual(universeDomain, 'googleapis.com'); }); - describe('retrieveRegisterParameters', () => { - it('invokes retrieveRegisterParameters without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersResponse() - ); - client.innerApiCalls.retrieveRegisterParameters = stubSimpleCall(expectedResponse); - const [response] = await client.retrieveRegisterParameters(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes retrieveRegisterParameters without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersResponse() - ); - client.innerApiCalls.retrieveRegisterParameters = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.retrieveRegisterParameters( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + it('throws DeprecationWarning if static servicePath is used', () => { + const stub = sinon.stub(process, 'emitWarning'); + const servicePath = domainsModule.v1beta1.DomainsClient.servicePath; + assert.strictEqual(servicePath, 'domains.googleapis.com'); + assert(stub.called); + stub.restore(); + }); + + it('throws DeprecationWarning if static apiEndpoint is used', () => { + const stub = sinon.stub(process, 'emitWarning'); + const apiEndpoint = domainsModule.v1beta1.DomainsClient.apiEndpoint; + assert.strictEqual(apiEndpoint, 'domains.googleapis.com'); + assert(stub.called); + stub.restore(); + }); + } + it('sets apiEndpoint according to universe domain camelCase', () => { + const client = new domainsModule.v1beta1.DomainsClient({ + universeDomain: 'example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.example.com'); + }); - it('invokes retrieveRegisterParameters with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.retrieveRegisterParameters = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.retrieveRegisterParameters(request), expectedError); - const actualRequest = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveRegisterParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('sets apiEndpoint according to universe domain snakeCase', () => { + const client = new domainsModule.v1beta1.DomainsClient({ + universe_domain: 'example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.example.com'); + }); - it('invokes retrieveRegisterParameters with closed client', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest', ['location']); - request.location = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.retrieveRegisterParameters(request), expectedError); + if (typeof process === 'object' && 'env' in process) { + describe('GOOGLE_CLOUD_UNIVERSE_DOMAIN environment variable', () => { + it('sets apiEndpoint from environment variable', () => { + const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; + const client = new domainsModule.v1beta1.DomainsClient(); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.example.com'); + if (saved) { + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; + } else { + delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + } + }); + + it('value configured in code has priority over environment variable', () => { + const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; + const client = new domainsModule.v1beta1.DomainsClient({ + universeDomain: 'configured.example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'domains.configured.example.com'); + if (saved) { + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; + } else { + delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + } + }); + }); + } + it('does not allow setting both universeDomain and universe_domain', () => { + assert.throws(() => { + new domainsModule.v1beta1.DomainsClient({ + universe_domain: 'example.com', + universeDomain: 'example.net', }); + }); }); - describe('retrieveTransferParameters', () => { - it('invokes retrieveTransferParameters without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersResponse() - ); - client.innerApiCalls.retrieveTransferParameters = stubSimpleCall(expectedResponse); - const [response] = await client.retrieveTransferParameters(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('has port', () => { + const port = domainsModule.v1beta1.DomainsClient.port; + assert(port); + assert(typeof port === 'number'); + }); - it('invokes retrieveTransferParameters without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersResponse() - ); - client.innerApiCalls.retrieveTransferParameters = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.retrieveTransferParameters( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('should create a client with no option', () => { + const client = new domainsModule.v1beta1.DomainsClient(); + assert(client); + }); - it('invokes retrieveTransferParameters with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedHeaderRequestParams = `location=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.retrieveTransferParameters = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.retrieveTransferParameters(request), expectedError); - const actualRequest = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveTransferParameters as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('should create a client with gRPC fallback', () => { + const client = new domainsModule.v1beta1.DomainsClient({ + fallback: true, + }); + assert(client); + }); - it('invokes retrieveTransferParameters with closed client', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest', ['location']); - request.location = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.retrieveTransferParameters(request), expectedError); - }); + it('has initialize method and supports deferred initialization', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + assert.strictEqual(client.domainsStub, undefined); + await client.initialize(); + assert(client.domainsStub); }); - describe('getRegistration', () => { - it('invokes getRegistration without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.Registration() - ); - client.innerApiCalls.getRegistration = stubSimpleCall(expectedResponse); - const [response] = await client.getRegistration(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + it('has close method for the initialized client', (done) => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.initialize().catch((err) => { + throw err; + }); + assert(client.domainsStub); + client + .close() + .then(() => { + done(); + }) + .catch((err) => { + throw err; }); + }); - it('invokes getRegistration without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.Registration() - ); - client.innerApiCalls.getRegistration = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.getRegistration( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1beta1.IRegistration|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + it('has close method for the non-initialized client', (done) => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + assert.strictEqual(client.domainsStub, undefined); + client + .close() + .then(() => { + done(); + }) + .catch((err) => { + throw err; }); + }); - it('invokes getRegistration with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.getRegistration = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.getRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); - it('invokes getRegistration with closed client', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.GetRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.GetRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.getRegistration(request), expectedError); - }); + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + }); + + describe('searchDomains', () => { + it('invokes searchDomains without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.SearchDomainsResponse(), + ); + client.innerApiCalls.searchDomains = stubSimpleCall(expectedResponse); + const [response] = await client.searchDomains(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('retrieveAuthorizationCode', () => { - it('invokes retrieveAuthorizationCode without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.AuthorizationCode() - ); - client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCall(expectedResponse); - const [response] = await client.retrieveAuthorizationCode(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes searchDomains without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.SearchDomainsResponse(), + ); + client.innerApiCalls.searchDomains = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.searchDomains( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1beta1.ISearchDomainsResponse | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes retrieveAuthorizationCode without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.AuthorizationCode() - ); - client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.retrieveAuthorizationCode( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1beta1.IAuthorizationCode|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes searchDomains with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.searchDomains = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.searchDomains(request), expectedError); + const actualRequest = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.searchDomains as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes retrieveAuthorizationCode with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.retrieveAuthorizationCode(request), expectedError); - const actualRequest = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.retrieveAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes searchDomains with closed client', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.SearchDomainsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.SearchDomainsRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.searchDomains(request), expectedError); + }); + }); + + describe('retrieveRegisterParameters', () => { + it('invokes retrieveRegisterParameters without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersResponse(), + ); + client.innerApiCalls.retrieveRegisterParameters = + stubSimpleCall(expectedResponse); + const [response] = await client.retrieveRegisterParameters(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes retrieveAuthorizationCode with closed client', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.retrieveAuthorizationCode(request), expectedError); - }); + it('invokes retrieveRegisterParameters without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersResponse(), + ); + client.innerApiCalls.retrieveRegisterParameters = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.retrieveRegisterParameters( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1beta1.IRetrieveRegisterParametersResponse | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('resetAuthorizationCode', () => { - it('invokes resetAuthorizationCode without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.AuthorizationCode() - ); - client.innerApiCalls.resetAuthorizationCode = stubSimpleCall(expectedResponse); - const [response] = await client.resetAuthorizationCode(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveRegisterParameters with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.retrieveRegisterParameters = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.retrieveRegisterParameters(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveRegisterParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes resetAuthorizationCode without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.AuthorizationCode() - ); - client.innerApiCalls.resetAuthorizationCode = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.resetAuthorizationCode( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1beta1.IAuthorizationCode|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveRegisterParameters with closed client', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveRegisterParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.retrieveRegisterParameters(request), + expectedError, + ); + }); + }); + + describe('retrieveTransferParameters', () => { + it('invokes retrieveTransferParameters without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersResponse(), + ); + client.innerApiCalls.retrieveTransferParameters = + stubSimpleCall(expectedResponse); + const [response] = await client.retrieveTransferParameters(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes resetAuthorizationCode with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.resetAuthorizationCode = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.resetAuthorizationCode(request), expectedError); - const actualRequest = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.resetAuthorizationCode as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveTransferParameters without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersResponse(), + ); + client.innerApiCalls.retrieveTransferParameters = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.retrieveTransferParameters( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1beta1.IRetrieveTransferParametersResponse | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes resetAuthorizationCode with closed client', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest', ['registration']); - request.registration = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.resetAuthorizationCode(request), expectedError); - }); + it('invokes retrieveTransferParameters with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedHeaderRequestParams = `location=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.retrieveTransferParameters = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.retrieveTransferParameters(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveTransferParameters as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('registerDomain', () => { - it('invokes registerDomain without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.registerDomain = stubLongRunningCall(expectedResponse); - const [operation] = await client.registerDomain(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveTransferParameters with closed client', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveTransferParametersRequest', + ['location'], + ); + request.location = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.retrieveTransferParameters(request), + expectedError, + ); + }); + }); + + describe('getRegistration', () => { + it('invokes getRegistration without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ); + client.innerApiCalls.getRegistration = stubSimpleCall(expectedResponse); + const [response] = await client.getRegistration(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes registerDomain without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.registerDomain = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.registerDomain( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getRegistration without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ); + client.innerApiCalls.getRegistration = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getRegistration( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1beta1.IRegistration | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes registerDomain with call error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.registerDomain = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.registerDomain(request), expectedError); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getRegistration with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.getRegistration = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.getRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes registerDomain with LRO error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.RegisterDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.RegisterDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.registerDomain = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.registerDomain(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.registerDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getRegistration with closed client', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.GetRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.GetRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.getRegistration(request), expectedError); + }); + }); + + describe('retrieveAuthorizationCode', () => { + it('invokes retrieveAuthorizationCode without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.AuthorizationCode(), + ); + client.innerApiCalls.retrieveAuthorizationCode = + stubSimpleCall(expectedResponse); + const [response] = await client.retrieveAuthorizationCode(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkRegisterDomainProgress without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkRegisterDomainProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes retrieveAuthorizationCode without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.AuthorizationCode(), + ); + client.innerApiCalls.retrieveAuthorizationCode = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.retrieveAuthorizationCode( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1beta1.IAuthorizationCode | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkRegisterDomainProgress with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkRegisterDomainProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes retrieveAuthorizationCode with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.retrieveAuthorizationCode = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.retrieveAuthorizationCode(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.retrieveAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('transferDomain', () => { - it('invokes transferDomain without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.transferDomain = stubLongRunningCall(expectedResponse); - const [operation] = await client.transferDomain(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes retrieveAuthorizationCode with closed client', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RetrieveAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.retrieveAuthorizationCode(request), + expectedError, + ); + }); + }); + + describe('resetAuthorizationCode', () => { + it('invokes resetAuthorizationCode without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.AuthorizationCode(), + ); + client.innerApiCalls.resetAuthorizationCode = + stubSimpleCall(expectedResponse); + const [response] = await client.resetAuthorizationCode(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes transferDomain without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.transferDomain = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.transferDomain( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes resetAuthorizationCode without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.AuthorizationCode(), + ); + client.innerApiCalls.resetAuthorizationCode = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.resetAuthorizationCode( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1beta1.IAuthorizationCode | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes transferDomain with call error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.transferDomain = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.transferDomain(request), expectedError); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes resetAuthorizationCode with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.resetAuthorizationCode = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.resetAuthorizationCode(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.resetAuthorizationCode as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes transferDomain with LRO error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.TransferDomainRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.TransferDomainRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.transferDomain = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.transferDomain(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.transferDomain as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes resetAuthorizationCode with closed client', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ResetAuthorizationCodeRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.resetAuthorizationCode(request), + expectedError, + ); + }); + }); + + describe('registerDomain', () => { + it('invokes registerDomain without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.registerDomain = + stubLongRunningCall(expectedResponse); + const [operation] = await client.registerDomain(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkTransferDomainProgress without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkTransferDomainProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes registerDomain without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.registerDomain = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.registerDomain( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkTransferDomainProgress with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkTransferDomainProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes registerDomain with call error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.registerDomain = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.registerDomain(request), expectedError); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('updateRegistration', () => { - it('invokes updateRegistration without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.updateRegistration = stubLongRunningCall(expectedResponse); - const [operation] = await client.updateRegistration(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes registerDomain with LRO error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.RegisterDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.RegisterDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.registerDomain = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.registerDomain(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.registerDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateRegistration without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.updateRegistration = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.updateRegistration( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkRegisterDomainProgress without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkRegisterDomainProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes updateRegistration with call error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.updateRegistration = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.updateRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkRegisterDomainProgress with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkRegisterDomainProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('transferDomain', () => { + it('invokes transferDomain without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.transferDomain = + stubLongRunningCall(expectedResponse); + const [operation] = await client.transferDomain(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateRegistration with LRO error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.UpdateRegistrationRequest() - ); - request.registration ??= {}; - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.UpdateRegistrationRequest', ['registration', 'name']); - request.registration.name = defaultValue1; - const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.updateRegistration = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.updateRegistration(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes transferDomain without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.transferDomain = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.transferDomain( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkUpdateRegistrationProgress without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkUpdateRegistrationProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes transferDomain with call error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.transferDomain = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.transferDomain(request), expectedError); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkUpdateRegistrationProgress with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkUpdateRegistrationProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes transferDomain with LRO error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.TransferDomainRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.TransferDomainRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.transferDomain = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.transferDomain(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.transferDomain as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('configureManagementSettings', () => { - it('invokes configureManagementSettings without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureManagementSettings = stubLongRunningCall(expectedResponse); - const [operation] = await client.configureManagementSettings(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkTransferDomainProgress without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkTransferDomainProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes configureManagementSettings without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureManagementSettings = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.configureManagementSettings( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkTransferDomainProgress with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkTransferDomainProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('updateRegistration', () => { + it('invokes updateRegistration without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.updateRegistration = + stubLongRunningCall(expectedResponse); + const [operation] = await client.updateRegistration(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureManagementSettings with call error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureManagementSettings = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.configureManagementSettings(request), expectedError); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes updateRegistration without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.updateRegistration = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updateRegistration( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureManagementSettings with LRO error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureManagementSettings = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.configureManagementSettings(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureManagementSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes updateRegistration with call error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.updateRegistration = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.updateRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureManagementSettingsProgress without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkConfigureManagementSettingsProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes updateRegistration with LRO error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.UpdateRegistrationRequest(), + ); + request.registration ??= {}; + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.UpdateRegistrationRequest', + ['registration', 'name'], + ); + request.registration.name = defaultValue1; + const expectedHeaderRequestParams = `registration.name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.updateRegistration = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.updateRegistration(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureManagementSettingsProgress with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkConfigureManagementSettingsProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes checkUpdateRegistrationProgress without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkUpdateRegistrationProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); }); - describe('configureDnsSettings', () => { - it('invokes configureDnsSettings without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureDnsSettings = stubLongRunningCall(expectedResponse); - const [operation] = await client.configureDnsSettings(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkUpdateRegistrationProgress with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkUpdateRegistrationProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('configureManagementSettings', () => { + it('invokes configureManagementSettings without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureManagementSettings = + stubLongRunningCall(expectedResponse); + const [operation] = await client.configureManagementSettings(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureDnsSettings without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureDnsSettings = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.configureDnsSettings( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureManagementSettings without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureManagementSettings = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.configureManagementSettings( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureDnsSettings with call error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureDnsSettings = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.configureDnsSettings(request), expectedError); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureManagementSettings with call error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureManagementSettings = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects( + client.configureManagementSettings(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureDnsSettings with LRO error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureDnsSettings = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.configureDnsSettings(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureDnsSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureManagementSettings with LRO error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureManagementSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureManagementSettings = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.configureManagementSettings(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureManagementSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureDnsSettingsProgress without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkConfigureDnsSettingsProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes checkConfigureManagementSettingsProgress without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = + await client.checkConfigureManagementSettingsProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes checkConfigureDnsSettingsProgress with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkConfigureDnsSettingsProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes checkConfigureManagementSettingsProgress with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkConfigureManagementSettingsProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('configureDnsSettings', () => { + it('invokes configureDnsSettings without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureDnsSettings = + stubLongRunningCall(expectedResponse); + const [operation] = await client.configureDnsSettings(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('configureContactSettings', () => { - it('invokes configureContactSettings without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureContactSettings = stubLongRunningCall(expectedResponse); - const [operation] = await client.configureContactSettings(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureDnsSettings without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureDnsSettings = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.configureDnsSettings( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureContactSettings without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.configureContactSettings = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.configureContactSettings( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureDnsSettings with call error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureDnsSettings = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.configureDnsSettings(request), expectedError); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureContactSettings with call error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureContactSettings = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.configureContactSettings(request), expectedError); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureDnsSettings with LRO error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureDnsSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureDnsSettings = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.configureDnsSettings(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureDnsSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes configureContactSettings with LRO error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest', ['registration']); - request.registration = defaultValue1; - const expectedHeaderRequestParams = `registration=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.configureContactSettings = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.configureContactSettings(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.configureContactSettings as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkConfigureDnsSettingsProgress without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkConfigureDnsSettingsProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes checkConfigureContactSettingsProgress without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkConfigureContactSettingsProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes checkConfigureDnsSettingsProgress with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkConfigureDnsSettingsProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('configureContactSettings', () => { + it('invokes configureContactSettings without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureContactSettings = + stubLongRunningCall(expectedResponse); + const [operation] = await client.configureContactSettings(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkConfigureContactSettingsProgress with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkConfigureContactSettingsProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes configureContactSettings without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.configureContactSettings = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.configureContactSettings( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('exportRegistration', () => { - it('invokes exportRegistration without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.exportRegistration = stubLongRunningCall(expectedResponse); - const [operation] = await client.exportRegistration(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureContactSettings with call error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureContactSettings = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects( + client.configureContactSettings(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes exportRegistration without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.exportRegistration = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.exportRegistration( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes configureContactSettings with LRO error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ConfigureContactSettingsRequest', + ['registration'], + ); + request.registration = defaultValue1; + const expectedHeaderRequestParams = `registration=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.configureContactSettings = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.configureContactSettings(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.configureContactSettings as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes exportRegistration with call error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.exportRegistration = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.exportRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkConfigureContactSettingsProgress without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = + await client.checkConfigureContactSettingsProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes exportRegistration with LRO error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ExportRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ExportRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.exportRegistration = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.exportRegistration(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.exportRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkConfigureContactSettingsProgress with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkConfigureContactSettingsProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('exportRegistration', () => { + it('invokes exportRegistration without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.exportRegistration = + stubLongRunningCall(expectedResponse); + const [operation] = await client.exportRegistration(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkExportRegistrationProgress without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkExportRegistrationProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes exportRegistration without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.exportRegistration = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.exportRegistration( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.domains.v1beta1.IRegistration, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkExportRegistrationProgress with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkExportRegistrationProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes exportRegistration with call error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.exportRegistration = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.exportRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('deleteRegistration', () => { - it('invokes deleteRegistration without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.deleteRegistration = stubLongRunningCall(expectedResponse); - const [operation] = await client.deleteRegistration(request); - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes exportRegistration with LRO error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ExportRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ExportRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.exportRegistration = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.exportRegistration(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.exportRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes deleteRegistration without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.longrunning.Operation() - ); - client.innerApiCalls.deleteRegistration = stubLongRunningCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.deleteRegistration( - request, - (err?: Error|null, - result?: LROperation|null - ) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const operation = await promise as LROperation; - const [response] = await operation.promise(); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkExportRegistrationProgress without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkExportRegistrationProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes deleteRegistration with call error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.deleteRegistration = stubLongRunningCall(undefined, expectedError); - await assert.rejects(client.deleteRegistration(request), expectedError); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkExportRegistrationProgress with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkExportRegistrationProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('deleteRegistration', () => { + it('invokes deleteRegistration without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.deleteRegistration = + stubLongRunningCall(expectedResponse); + const [operation] = await client.deleteRegistration(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes deleteRegistration with LRO error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.DeleteRegistrationRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.DeleteRegistrationRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.deleteRegistration = stubLongRunningCall(undefined, undefined, expectedError); - const [operation] = await client.deleteRegistration(request); - await assert.rejects(operation.promise(), expectedError); - const actualRequest = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteRegistration as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes deleteRegistration without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation(), + ); + client.innerApiCalls.deleteRegistration = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.deleteRegistration( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1beta1.IOperationMetadata + > | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const operation = (await promise) as LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.domains.v1beta1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkDeleteRegistrationProgress without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedResponse = generateSampleMessage( - new operationsProtos.google.longrunning.Operation() - ); - expectedResponse.name = 'test'; - expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; - expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')} - - client.operationsClient.getOperation = stubSimpleCall(expectedResponse); - const decodedOperation = await client.checkDeleteRegistrationProgress(expectedResponse.name); - assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); - assert(decodedOperation.metadata); - assert((client.operationsClient.getOperation as SinonStub).getCall(0)); - }); + it('invokes deleteRegistration with call error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteRegistration = stubLongRunningCall( + undefined, + expectedError, + ); + await assert.rejects(client.deleteRegistration(request), expectedError); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes checkDeleteRegistrationProgress with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const expectedError = new Error('expected'); - - client.operationsClient.getOperation = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.checkDeleteRegistrationProgress(''), expectedError); - assert((client.operationsClient.getOperation as SinonStub) - .getCall(0)); - }); + it('invokes deleteRegistration with LRO error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.DeleteRegistrationRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.DeleteRegistrationRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteRegistration = stubLongRunningCall( + undefined, + undefined, + expectedError, + ); + const [operation] = await client.deleteRegistration(request); + await assert.rejects(operation.promise(), expectedError); + const actualRequest = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteRegistration as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('listRegistrations', () => { - it('invokes listRegistrations without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - ]; - client.innerApiCalls.listRegistrations = stubSimpleCall(expectedResponse); - const [response] = await client.listRegistrations(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkDeleteRegistrationProgress without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation(), + ); + expectedResponse.name = 'test'; + expectedResponse.response = { type_url: 'url', value: Buffer.from('') }; + expectedResponse.metadata = { type_url: 'url', value: Buffer.from('') }; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkDeleteRegistrationProgress( + expectedResponse.name, + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); - it('invokes listRegistrations without error using callback', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - ]; - client.innerApiCalls.listRegistrations = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.listRegistrations( - request, - (err?: Error|null, result?: protos.google.cloud.domains.v1beta1.IRegistration[]|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes checkDeleteRegistrationProgress with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.checkDeleteRegistrationProgress(''), + expectedError, + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('listRegistrations', () => { + it('invokes listRegistrations without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + ]; + client.innerApiCalls.listRegistrations = stubSimpleCall(expectedResponse); + const [response] = await client.listRegistrations(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listRegistrations with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.listRegistrations = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.listRegistrations(request), expectedError); - const actualRequest = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listRegistrations as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes listRegistrations without error using callback', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + ]; + client.innerApiCalls.listRegistrations = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listRegistrations( + request, + ( + err?: Error | null, + result?: protos.google.cloud.domains.v1beta1.IRegistration[] | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listRegistrationsStream without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - ]; - client.descriptors.page.listRegistrations.createStream = stubPageStreamingCall(expectedResponse); - const stream = client.listRegistrationsStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.google.cloud.domains.v1beta1.Registration[] = []; - stream.on('data', (response: protos.google.cloud.domains.v1beta1.Registration) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - const responses = await promise; - assert.deepStrictEqual(responses, expectedResponse); - assert((client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listRegistrations, request)); - assert( - (client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listRegistrations with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.listRegistrations = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.listRegistrations(request), expectedError); + const actualRequest = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listRegistrations as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listRegistrationsStream with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listRegistrations.createStream = stubPageStreamingCall(undefined, expectedError); - const stream = client.listRegistrationsStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.google.cloud.domains.v1beta1.Registration[] = []; - stream.on('data', (response: protos.google.cloud.domains.v1beta1.Registration) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - await assert.rejects(promise, expectedError); - assert((client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listRegistrations, request)); - assert( - (client.descriptors.page.listRegistrations.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listRegistrationsStream without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + ]; + client.descriptors.page.listRegistrations.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listRegistrationsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.domains.v1beta1.Registration[] = + []; + stream.on( + 'data', + (response: protos.google.cloud.domains.v1beta1.Registration) => { + responses.push(response); + }, + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listRegistrations, request), + ); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('uses async iteration with listRegistrations without error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - generateSampleMessage(new protos.google.cloud.domains.v1beta1.Registration()), - ]; - client.descriptors.page.listRegistrations.asyncIterate = stubAsyncIterationCall(expectedResponse); - const responses: protos.google.cloud.domains.v1beta1.IRegistration[] = []; - const iterable = client.listRegistrationsAsync(request); - for await (const resource of iterable) { - responses.push(resource!); - } - assert.deepStrictEqual(responses, expectedResponse); - assert.deepStrictEqual( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listRegistrationsStream with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listRegistrations.createStream = + stubPageStreamingCall(undefined, expectedError); + const stream = client.listRegistrationsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.domains.v1beta1.Registration[] = + []; + stream.on( + 'data', + (response: protos.google.cloud.domains.v1beta1.Registration) => { + responses.push(response); + }, + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listRegistrations, request), + ); + assert( + (client.descriptors.page.listRegistrations.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('uses async iteration with listRegistrations with error', async () => { - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.google.cloud.domains.v1beta1.ListRegistrationsRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listRegistrations.asyncIterate = stubAsyncIterationCall(undefined, expectedError); - const iterable = client.listRegistrationsAsync(request); - await assert.rejects(async () => { - const responses: protos.google.cloud.domains.v1beta1.IRegistration[] = []; - for await (const resource of iterable) { - responses.push(resource!); - } - }); - assert.deepStrictEqual( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('uses async iteration with listRegistrations without error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + generateSampleMessage( + new protos.google.cloud.domains.v1beta1.Registration(), + ), + ]; + client.descriptors.page.listRegistrations.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.google.cloud.domains.v1beta1.IRegistration[] = []; + const iterable = client.listRegistrationsAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.descriptors.page.listRegistrations.asyncIterate as SinonStub + ).getCall(0).args[1], + request, + ); + assert( + (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); }); - describe('Path templates', () => { - - describe('location', async () => { - const fakePath = "/rendered/path/location"; - const expectedParameters = { - project: "projectValue", - location: "locationValue", - }; - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - client.pathTemplates.locationPathTemplate.render = - sinon.stub().returns(fakePath); - client.pathTemplates.locationPathTemplate.match = - sinon.stub().returns(expectedParameters); - - it('locationPath', () => { - const result = client.locationPath("projectValue", "locationValue"); - assert.strictEqual(result, fakePath); - assert((client.pathTemplates.locationPathTemplate.render as SinonStub) - .getCall(-1).calledWith(expectedParameters)); - }); - - it('matchProjectFromLocationName', () => { - const result = client.matchProjectFromLocationName(fakePath); - assert.strictEqual(result, "projectValue"); - assert((client.pathTemplates.locationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - - it('matchLocationFromLocationName', () => { - const result = client.matchLocationFromLocationName(fakePath); - assert.strictEqual(result, "locationValue"); - assert((client.pathTemplates.locationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - }); + it('uses async iteration with listRegistrations with error', async () => { + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.domains.v1beta1.ListRegistrationsRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.domains.v1beta1.ListRegistrationsRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listRegistrations.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listRegistrationsAsync(request); + await assert.rejects(async () => { + const responses: protos.google.cloud.domains.v1beta1.IRegistration[] = + []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.descriptors.page.listRegistrations.asyncIterate as SinonStub + ).getCall(0).args[1], + request, + ); + assert( + (client.descriptors.page.listRegistrations.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); + }); + + describe('Path templates', () => { + describe('location', async () => { + const fakePath = '/rendered/path/location'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + }; + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + client.pathTemplates.locationPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.locationPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('locationPath', () => { + const result = client.locationPath('projectValue', 'locationValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.locationPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters), + ); + }); + + it('matchProjectFromLocationName', () => { + const result = client.matchProjectFromLocationName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + + it('matchLocationFromLocationName', () => { + const result = client.matchLocationFromLocationName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + }); - describe('registration', async () => { - const fakePath = "/rendered/path/registration"; - const expectedParameters = { - project: "projectValue", - location: "locationValue", - registration: "registrationValue", - }; - const client = new domainsModule.v1beta1.DomainsClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - client.pathTemplates.registrationPathTemplate.render = - sinon.stub().returns(fakePath); - client.pathTemplates.registrationPathTemplate.match = - sinon.stub().returns(expectedParameters); - - it('registrationPath', () => { - const result = client.registrationPath("projectValue", "locationValue", "registrationValue"); - assert.strictEqual(result, fakePath); - assert((client.pathTemplates.registrationPathTemplate.render as SinonStub) - .getCall(-1).calledWith(expectedParameters)); - }); - - it('matchProjectFromRegistrationName', () => { - const result = client.matchProjectFromRegistrationName(fakePath); - assert.strictEqual(result, "projectValue"); - assert((client.pathTemplates.registrationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - - it('matchLocationFromRegistrationName', () => { - const result = client.matchLocationFromRegistrationName(fakePath); - assert.strictEqual(result, "locationValue"); - assert((client.pathTemplates.registrationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - - it('matchRegistrationFromRegistrationName', () => { - const result = client.matchRegistrationFromRegistrationName(fakePath); - assert.strictEqual(result, "registrationValue"); - assert((client.pathTemplates.registrationPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - }); + describe('registration', async () => { + const fakePath = '/rendered/path/registration'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + registration: 'registrationValue', + }; + const client = new domainsModule.v1beta1.DomainsClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + client.pathTemplates.registrationPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.registrationPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('registrationPath', () => { + const result = client.registrationPath( + 'projectValue', + 'locationValue', + 'registrationValue', + ); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.registrationPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters), + ); + }); + + it('matchProjectFromRegistrationName', () => { + const result = client.matchProjectFromRegistrationName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.registrationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + + it('matchLocationFromRegistrationName', () => { + const result = client.matchLocationFromRegistrationName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.registrationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + + it('matchRegistrationFromRegistrationName', () => { + const result = client.matchRegistrationFromRegistrationName(fakePath); + assert.strictEqual(result, 'registrationValue'); + assert( + (client.pathTemplates.registrationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); }); + }); }); diff --git a/packages/google-cloud-domains/webpack.config.js b/packages/google-cloud-domains/webpack.config.js index 724c8b56ffda..eb97491e45b8 100644 --- a/packages/google-cloud-domains/webpack.config.js +++ b/packages/google-cloud-domains/webpack.config.js @@ -1,4 +1,4 @@ -// Copyright 2026 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/packages/grafeas/.jsdoc.js b/packages/grafeas/.jsdoc.js index 2c49ae671c42..f062ab248d4c 100644 --- a/packages/grafeas/.jsdoc.js +++ b/packages/grafeas/.jsdoc.js @@ -40,7 +40,7 @@ module.exports = { includePattern: '\\.js$' }, templates: { - copyright: 'Copyright 2025 Google LLC', + copyright: 'Copyright 2026 Google LLC', includeDate: false, sourceFiles: false, systemName: '@google-cloud/grafeas', diff --git a/packages/grafeas/.nycrc b/packages/grafeas/.nycrc index b18d5472b62b..81a95fc94b00 100644 --- a/packages/grafeas/.nycrc +++ b/packages/grafeas/.nycrc @@ -21,4 +21,4 @@ ], "exclude-after-remap": false, "all": true -} +} \ No newline at end of file diff --git a/packages/grafeas/.readme-partials.yaml b/packages/grafeas/.readme-partials.yaml deleted file mode 100644 index 73ed3d9f5062..000000000000 --- a/packages/grafeas/.readme-partials.yaml +++ /dev/null @@ -1,3 +0,0 @@ -introduction: |- - A [Grafeas API Client](https://grafeas.io/) compatible with Google Cloud's - [Container Analysis API](https://cloud.google.com/container-registry/docs/container-analysis). diff --git a/packages/grafeas/README.md b/packages/grafeas/README.md index 97833a9e94d6..cfd4b2869f4d 100644 --- a/packages/grafeas/README.md +++ b/packages/grafeas/README.md @@ -1,24 +1,25 @@ [//]: # "This README.md file is auto-generated, all changes to this file will be lost." -[//]: # "To regenerate it, use `python -m synthtool`." +[//]: # "The comments you see below are used to generate those parts of the template in later states." Google Cloud Platform logo -# [Grafeas: Node.js Client](https://github.com/googleapis/google-cloud-node/tree/main/packages/grafeas) - -[![release level](https://img.shields.io/badge/release%20level-stable-brightgreen.svg?style=flat)](https://cloud.google.com/terms/launch-stages) -[![npm version](https://img.shields.io/npm/v/@google-cloud/grafeas.svg)](https://www.npmjs.org/package/@google-cloud/grafeas) - +# [Container Analysis API: Nodejs Client][homepage] +This library is considered to be **stable**. The code surface will not change in backwards-incompatible ways +unless absolutely necessary (e.g. because of critical security issues) or with +an extensive deprecation period. Issues and requests against **stable** libraries +are addressed with the highest priority +[![npm version](https://img.shields.io/npm/v/@google-cloud/grafeas.svg)](https://www.npmjs.org/package/@google-cloud/grafeas) -Grafeas API client for Node.js +Container Analysis API client for Node.js +[//]: # "partials.introduction" A comprehensive list of changes in each version may be found in -[the CHANGELOG](https://github.com/googleapis/google-cloud-node/tree/main/packages/grafeas/CHANGELOG.md). +[the CHANGELOG][homepage_changelog]. + +* [Container Analysis API Nodejs Client API Reference](https://cloud.google.com/nodejs/docs/reference/grafeas/latest) -* [Grafeas Node.js Client API Reference][client-docs] -* [Grafeas Documentation][product-docs] -* [github.com/googleapis/google-cloud-node/packages/grafeas](https://github.com/googleapis/google-cloud-node/tree/main/packages/grafeas) Read more about the client libraries for Cloud APIs, including the older Google APIs Client Libraries, in [Client Libraries Explained][explained]. @@ -27,88 +28,52 @@ Google APIs Client Libraries, in [Client Libraries Explained][explained]. **Table of contents:** - * [Quickstart](#quickstart) * [Before you begin](#before-you-begin) * [Installing the client library](#installing-the-client-library) - * [Using the client library](#using-the-client-library) -* [Samples](#samples) + * [Versioning](#versioning) * [Contributing](#contributing) * [License](#license) ## Quickstart - ### Before you begin 1. [Select or create a Cloud Platform project][projects]. -1. [Enable the Grafeas API][enable_api]. +1. [Enable billing for your project][billing]. +1. [Enable the Container Analysis API API][enable_api]. 1. [Set up authentication][auth] so you can access the API from your local workstation. - ### Installing the client library ```bash npm install @google-cloud/grafeas ``` - -### Using the client library - -```javascript - -// const projectId = 'my-project'; - -// instantiate the client. -const grpc = require('@grpc/grpc-js'); -const {GrafeasClient} = require('@google-cloud/grafeas'); -const client = new GrafeasClient({ - sslCreds: grpc.credentials.createInsecure(), // or any other credentials object. - servicePath: '0.0.0.0', // overriding the service path. - port: 8080, // overriding the port. -}); - -// populate the request. -const formattedName = client.projectPath(projectId); -const request = { - parent: formattedName, -}; - -// fetch the list of occurrences. -const [resp] = await client.listOccurrences(request); -console.info(resp); - -``` - - +[//]: # "partials.body" ## Samples -Samples are in the [`samples/`](https://github.com/googleapis/google-cloud-node/tree/main/packages/grafeas/samples) directory. Each sample's `README.md` has instructions for running its sample. - -| Sample | Source Code | Try it | -| --------------------------- | --------------------------------- | ------ | -| Grafeas.batch_create_notes | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.batch_create_notes.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.batch_create_notes.js,packages/grafeas/samples/README.md) | -| Grafeas.batch_create_occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.batch_create_occurrences.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.batch_create_occurrences.js,packages/grafeas/samples/README.md) | -| Grafeas.create_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.create_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.create_note.js,packages/grafeas/samples/README.md) | -| Grafeas.create_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.create_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.create_occurrence.js,packages/grafeas/samples/README.md) | -| Grafeas.delete_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.delete_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.delete_note.js,packages/grafeas/samples/README.md) | -| Grafeas.delete_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.delete_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.delete_occurrence.js,packages/grafeas/samples/README.md) | -| Grafeas.get_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.get_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.get_note.js,packages/grafeas/samples/README.md) | -| Grafeas.get_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.get_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.get_occurrence.js,packages/grafeas/samples/README.md) | -| Grafeas.get_occurrence_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.get_occurrence_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.get_occurrence_note.js,packages/grafeas/samples/README.md) | -| Grafeas.list_note_occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.list_note_occurrences.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.list_note_occurrences.js,packages/grafeas/samples/README.md) | -| Grafeas.list_notes | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.list_notes.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.list_notes.js,packages/grafeas/samples/README.md) | -| Grafeas.list_occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.list_occurrences.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.list_occurrences.js,packages/grafeas/samples/README.md) | -| Grafeas.update_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.update_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.update_note.js,packages/grafeas/samples/README.md) | -| Grafeas.update_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.update_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/generated/v1/grafeas.update_occurrence.js,packages/grafeas/samples/README.md) | -| Quickstart | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/grafeas/samples/quickstart.js,packages/grafeas/samples/README.md) | - +Samples are in the [`samples/`][homepage_samples] directory. Each sample's `README.md` has instructions for running its sample. + +| Sample | Source Code | +| --------------------------- | --------------------------------- | +| batch create notes | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.batch_create_notes.js) | +| batch create occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.batch_create_occurrences.js) | +| create note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.create_note.js) | +| create occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.create_occurrence.js) | +| delete note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.delete_note.js) | +| delete occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.delete_occurrence.js) | +| get note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.get_note.js) | +| get occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.get_occurrence.js) | +| get occurrence note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.get_occurrence_note.js) | +| list note occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.list_note_occurrences.js) | +| list notes | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.list_notes.js) | +| list occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.list_occurrences.js) | +| update note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.update_note.js) | +| update occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples/generated/v1/grafeas.update_occurrence.js) | -The [Grafeas Node.js Client API Reference][client-docs] documentation -also contains samples. - ## Supported Node.js Versions Our client libraries follow the [Node.js release schedule](https://github.com/nodejs/release#release-schedule). @@ -134,18 +99,6 @@ for versions compatible with Node.js 8. This library follows [Semantic Versioning](http://semver.org/). - - -This library is considered to be **stable**. The code surface will not change in backwards-incompatible ways -unless absolutely necessary (e.g. because of critical security issues) or with -an extensive deprecation period. Issues and requests against **stable** libraries -are addressed with the highest priority. - - - - - - More Information: [Google Cloud Platform Launch Stages][launch_stages] [launch_stages]: https://cloud.google.com/terms/launch-stages @@ -154,11 +107,9 @@ More Information: [Google Cloud Platform Launch Stages][launch_stages] Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/google-cloud-node/blob/main/CONTRIBUTING.md). -Please note that this `README.md`, the `samples/README.md`, +Please note that this `README.md` and a variety of configuration files in this repository (including `.nycrc` and `tsconfig.json`) -are generated from a central template. To edit one of these files, make an edit -to its templates in -[directory](https://github.com/googleapis/synthtool). +are generated from a central template. ## License @@ -166,13 +117,11 @@ Apache Version 2.0 See [LICENSE](https://github.com/googleapis/google-cloud-node/blob/main/LICENSE) -[client-docs]: https://cloud.google.com/nodejs/docs/reference/grafeas/latest -[product-docs]: https://cloud.google.com/container-registry/docs/container-analysis [shell_img]: https://gstatic.com/cloudssh/images/open-btn.png [projects]: https://console.cloud.google.com/project [billing]: https://support.google.com/cloud/answer/6293499#enable-billing [enable_api]: https://console.cloud.google.com/flows/enableapi?apiid=containeranalysis.googleapis.com [auth]: https://cloud.google.com/docs/authentication/external/set-up-adc-local - - -A [Grafeas API Client](https://grafeas.io/) compatible with Google Clouds \ No newline at end of file +[homepage_samples]: https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/samples +[homepage_changelog]: https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas/CHANGELOG.md +[homepage]: https://github.com/googleapis/google-cloud-node/blob/main/packages/grafeas diff --git a/packages/grafeas/protos/grafeas/v1/common.proto b/packages/grafeas/protos/grafeas/v1/common.proto index b8af4359cfed..73ef02e357b6 100644 --- a/packages/grafeas/protos/grafeas/v1/common.proto +++ b/packages/grafeas/protos/grafeas/v1/common.proto @@ -134,6 +134,9 @@ message FileLocation { // Each package found in a file should have its own layer metadata (that is, // information from the origin layer of the package). LayerDetails layer_details = 2; + // Line number in the file where the package was found. + // Optional field that only applies to source repository scanning. + int32 line_number = 3; } // BaseImage describes a base image of a container image. @@ -144,6 +147,8 @@ message BaseImage { string repository = 2; // The number of layers that the base image is composed of. int32 layer_count = 3; + // The registry in which the base image is from. + string registry = 4; } // Details about the layer a package was found in. diff --git a/packages/grafeas/protos/grafeas/v1/discovery.proto b/packages/grafeas/protos/grafeas/v1/discovery.proto index 9e9bd184802e..95b3dc23d5b8 100644 --- a/packages/grafeas/protos/grafeas/v1/discovery.proto +++ b/packages/grafeas/protos/grafeas/v1/discovery.proto @@ -148,4 +148,15 @@ message DiscoveryOccurrence { // The status of an vulnerability attestation generation. VulnerabilityAttestation vulnerability_attestation = 10; + + message File { + string name = 1; + map digest = 2; + } + + // Files that make up the resource described by the occurrence. + repeated File files = 11; + + // The last time vulnerability scan results changed. + google.protobuf.Timestamp last_vulnerability_update_time = 12; } diff --git a/packages/grafeas/protos/grafeas/v1/grafeas.proto b/packages/grafeas/protos/grafeas/v1/grafeas.proto index 0b5320495b85..1eee309f4caa 100644 --- a/packages/grafeas/protos/grafeas/v1/grafeas.proto +++ b/packages/grafeas/protos/grafeas/v1/grafeas.proto @@ -402,6 +402,13 @@ message ListOccurrencesRequest { // Token to provide to skip to a particular spot in the list. string page_token = 4; + + // If set, the request will return all reachable Occurrences + // and report all unreachable regions in the `unreachable` field in + // the response. + // + // Only applicable for requests in the global region. + bool return_partial_success = 5; } // Response for listing occurrences. @@ -412,6 +419,12 @@ message ListOccurrencesResponse { // `page_token` for the following request. An empty value means no more // results. string next_page_token = 2; + // Unreachable regions. Populated for requests from the global region + // when `return_partial_success` is set. + // + // Format: `projects/[PROJECT_ID]/locations/[LOCATION]` + repeated string unreachable = 3 + [(google.api.field_behavior) = UNORDERED_LIST]; } // Request to delete an occurrence. @@ -488,6 +501,13 @@ message ListNotesRequest { // Token to provide to skip to a particular spot in the list. string page_token = 4; + + // If set, the request will return all reachable Notes + // and report all unreachable regions in the `unreachable` field in + // the response. + // + // Only applicable for requests in the global region. + bool return_partial_success = 5; } // Response for listing notes. @@ -498,6 +518,12 @@ message ListNotesResponse { // `page_token` for the following request. An empty value means no more // results. string next_page_token = 2; + // Unreachable regions. Populated for requests from the global region + // when `return_partial_success` is set. + // + // Format: `projects/[PROJECT_ID]/locations/[LOCATION]` + repeated string unreachable = 3 + [(google.api.field_behavior) = UNORDERED_LIST]; } // Request to delete a note. diff --git a/packages/grafeas/protos/grafeas/v1/risk.proto b/packages/grafeas/protos/grafeas/v1/risk.proto new file mode 100644 index 000000000000..de70f836371c --- /dev/null +++ b/packages/grafeas/protos/grafeas/v1/risk.proto @@ -0,0 +1,46 @@ +// Copyright 2025 The Grafeas Authors. All rights reserved. +// +// 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 grafeas.v1; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +message Risk { + // CISA maintains the authoritative source of vulnerabilities that have been + // exploited in the wild. + CISAKnownExploitedVulnerabilities cisa_kev = 1; + // The Exploit Prediction Scoring System (EPSS) estimates the likelihood + // (probability) that a software vulnerability will be exploited in the wild. + ExploitPredictionScoringSystem epss = 2; +} + +message CISAKnownExploitedVulnerabilities { + // Whether the vulnerability is known to have been leveraged as part of a + // ransomware campaign. + string known_ransomware_campaign_use = 1; +} + +message ExploitPredictionScoringSystem { + // The percentile of the current score, the proportion of all scored + // vulnerabilities with the same or a lower EPSS score + double percentile = 1; + // The EPSS score representing the probability [0-1] of exploitation in the + // wild in the next 30 days + double score = 2; +} diff --git a/packages/grafeas/protos/grafeas/v1/secret.proto b/packages/grafeas/protos/grafeas/v1/secret.proto index 01832647dc36..8d538cd0e607 100644 --- a/packages/grafeas/protos/grafeas/v1/secret.proto +++ b/packages/grafeas/protos/grafeas/v1/secret.proto @@ -17,6 +17,7 @@ syntax = "proto3"; package grafeas.v1; import "google/api/field_behavior.proto"; +import "google/protobuf/any.proto"; import "google/protobuf/timestamp.proto"; import "grafeas/v1/common.proto"; @@ -39,6 +40,13 @@ message SecretOccurrence { // Status of the secret. repeated SecretStatus statuses = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Scan result of the secret. + google.protobuf.Any data = 4; + + // Hash value, typically a digest for the secret data, that allows unique + // identification of a specific secret. + Digest digest = 5; } // The location of the secret. @@ -84,7 +92,50 @@ enum SecretKind { SECRET_KIND_UNSPECIFIED = 0; // The secret kind is unknown. SECRET_KIND_UNKNOWN = 1; - // A GCP service account key per: + // A Google Cloud service account key per: // https://cloud.google.com/iam/docs/creating-managing-service-account-keys SECRET_KIND_GCP_SERVICE_ACCOUNT_KEY = 2; + // A Google Cloud API key per: + // https://cloud.google.com/docs/authentication/api-keys + SECRET_KIND_GCP_API_KEY = 3; + // A Google Cloud OAuth2 client credentials per: + // https://developers.google.com/identity/protocols/oauth2 + SECRET_KIND_GCP_OAUTH2_CLIENT_CREDENTIALS = 4; + // A Google Cloud OAuth2 access token per: + // https://cloud.google.com/docs/authentication/token-types#access + SECRET_KIND_GCP_OAUTH2_ACCESS_TOKEN = 5; + // An Anthropic Admin API key. + SECRET_KIND_ANTHROPIC_ADMIN_API_KEY = 6; + // An Anthropic API key. + SECRET_KIND_ANTHROPIC_API_KEY = 7; + // An Azure access token. + SECRET_KIND_AZURE_ACCESS_TOKEN = 8; + // An Azure Identity Platform ID token. + SECRET_KIND_AZURE_IDENTITY_TOKEN = 9; + // A Docker Hub personal access token. + SECRET_KIND_DOCKER_HUB_PERSONAL_ACCESS_TOKEN = 10; + // A GitHub App refresh token. + SECRET_KIND_GITHUB_APP_REFRESH_TOKEN = 11; + // A GitHub App server-to-server token. + SECRET_KIND_GITHUB_APP_SERVER_TO_SERVER_TOKEN = 12; + // A GitHub App user-to-server token. + SECRET_KIND_GITHUB_APP_USER_TO_SERVER_TOKEN = 13; + // A GitHub personal access token (classic). + SECRET_KIND_GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN = 14; + // A GitHub fine-grained personal access token. + SECRET_KIND_GITHUB_FINE_GRAINED_PERSONAL_ACCESS_TOKEN = 15; + // A GitHub OAuth token. + SECRET_KIND_GITHUB_OAUTH_TOKEN = 16; + // A Hugging Face API key. + SECRET_KIND_HUGGINGFACE_API_KEY = 17; + // An OpenAI API key. + SECRET_KIND_OPENAI_API_KEY = 18; + // A Perplexity API key. + SECRET_KIND_PERPLEXITY_API_KEY = 19; + // A Stripe secret key. + SECRET_KIND_STRIPE_SECRET_KEY = 20; + // A Stripe restricted key. + SECRET_KIND_STRIPE_RESTRICTED_KEY = 21; + // A Stripe webhook secret. + SECRET_KIND_STRIPE_WEBHOOK_SECRET = 22; } diff --git a/packages/grafeas/protos/grafeas/v1/vulnerability.proto b/packages/grafeas/protos/grafeas/v1/vulnerability.proto index ee1381332720..1593cc59c299 100644 --- a/packages/grafeas/protos/grafeas/v1/vulnerability.proto +++ b/packages/grafeas/protos/grafeas/v1/vulnerability.proto @@ -21,6 +21,7 @@ import "google/protobuf/timestamp.proto"; import "grafeas/v1/common.proto"; import "grafeas/v1/cvss.proto"; import "grafeas/v1/package.proto"; +import "grafeas/v1/risk.proto"; import "grafeas/v1/severity.proto"; import "grafeas/v1/vex.proto"; @@ -156,7 +157,10 @@ message VulnerabilityNote { // The full description of the v2 CVSS for this vulnerability. CVSS cvss_v2 = 8; - // Next free ID is 9. + // The time this advisory was published by the source. + google.protobuf.Timestamp advisory_publish_time = 9; + + // Next free ID is 10. } // An occurrence of a severity vulnerability on a resource. @@ -301,5 +305,8 @@ message VulnerabilityOccurrence { // Occurrence-specific extra details about the vulnerability. string extra_details = 14; - // Next free ID is 15. + // Risk information about the vulnerability, such as CISA, EPSS, etc. + Risk risk = 15; + + // Next free ID is 16. } diff --git a/packages/grafeas/protos/protos.d.ts b/packages/grafeas/protos/protos.d.ts index d2352ecc6c2f..d89c1fa35d5d 100644 --- a/packages/grafeas/protos/protos.d.ts +++ b/packages/grafeas/protos/protos.d.ts @@ -867,6 +867,9 @@ export namespace grafeas { /** FileLocation layerDetails */ layerDetails?: (grafeas.v1.ILayerDetails|null); + + /** FileLocation lineNumber */ + lineNumber?: (number|null); } /** Represents a FileLocation. */ @@ -884,6 +887,9 @@ export namespace grafeas { /** FileLocation layerDetails. */ public layerDetails?: (grafeas.v1.ILayerDetails|null); + /** FileLocation lineNumber. */ + public lineNumber: number; + /** * Creates a new FileLocation instance using the specified properties. * @param [properties] Properties to set @@ -973,6 +979,9 @@ export namespace grafeas { /** BaseImage layerCount */ layerCount?: (number|null); + + /** BaseImage registry */ + registry?: (string|null); } /** Represents a BaseImage. */ @@ -993,6 +1002,9 @@ export namespace grafeas { /** BaseImage layerCount. */ public layerCount: number; + /** BaseImage registry. */ + public registry: string; + /** * Creates a new BaseImage instance using the specified properties. * @param [properties] Properties to set @@ -7543,6 +7555,12 @@ export namespace grafeas { /** DiscoveryOccurrence vulnerabilityAttestation */ vulnerabilityAttestation?: (grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation|null); + + /** DiscoveryOccurrence files */ + files?: (grafeas.v1.DiscoveryOccurrence.IFile[]|null); + + /** DiscoveryOccurrence lastVulnerabilityUpdateTime */ + lastVulnerabilityUpdateTime?: (google.protobuf.ITimestamp|null); } /** Represents a DiscoveryOccurrence. */ @@ -7584,6 +7602,12 @@ export namespace grafeas { /** DiscoveryOccurrence vulnerabilityAttestation. */ public vulnerabilityAttestation?: (grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation|null); + /** DiscoveryOccurrence files. */ + public files: grafeas.v1.DiscoveryOccurrence.IFile[]; + + /** DiscoveryOccurrence lastVulnerabilityUpdateTime. */ + public lastVulnerabilityUpdateTime?: (google.protobuf.ITimestamp|null); + /** * Creates a new DiscoveryOccurrence instance using the specified properties. * @param [properties] Properties to set @@ -8010,6 +8034,109 @@ export namespace grafeas { FAILURE = 2 } } + + /** Properties of a File. */ + interface IFile { + + /** File name */ + name?: (string|null); + + /** File digest */ + digest?: ({ [k: string]: string }|null); + } + + /** Represents a File. */ + class File implements IFile { + + /** + * Constructs a new File. + * @param [properties] Properties to set + */ + constructor(properties?: grafeas.v1.DiscoveryOccurrence.IFile); + + /** File name. */ + public name: string; + + /** File digest. */ + public digest: { [k: string]: string }; + + /** + * Creates a new File instance using the specified properties. + * @param [properties] Properties to set + * @returns File instance + */ + public static create(properties?: grafeas.v1.DiscoveryOccurrence.IFile): grafeas.v1.DiscoveryOccurrence.File; + + /** + * Encodes the specified File message. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.File.verify|verify} messages. + * @param message File message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: grafeas.v1.DiscoveryOccurrence.IFile, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified File message, length delimited. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.File.verify|verify} messages. + * @param message File message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: grafeas.v1.DiscoveryOccurrence.IFile, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a File message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns File + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): grafeas.v1.DiscoveryOccurrence.File; + + /** + * Decodes a File message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns File + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): grafeas.v1.DiscoveryOccurrence.File; + + /** + * Verifies a File message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a File message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns File + */ + public static fromObject(object: { [k: string]: any }): grafeas.v1.DiscoveryOccurrence.File; + + /** + * Creates a plain object from a File message. Also converts values to other types if specified. + * @param message File + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: grafeas.v1.DiscoveryOccurrence.File, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this File to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for File + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } } /** Properties of a DSSEAttestationNote. */ @@ -9184,6 +9311,9 @@ export namespace grafeas { /** ListOccurrencesRequest pageToken */ pageToken?: (string|null); + + /** ListOccurrencesRequest returnPartialSuccess */ + returnPartialSuccess?: (boolean|null); } /** Represents a ListOccurrencesRequest. */ @@ -9207,6 +9337,9 @@ export namespace grafeas { /** ListOccurrencesRequest pageToken. */ public pageToken: string; + /** ListOccurrencesRequest returnPartialSuccess. */ + public returnPartialSuccess: boolean; + /** * Creates a new ListOccurrencesRequest instance using the specified properties. * @param [properties] Properties to set @@ -9293,6 +9426,9 @@ export namespace grafeas { /** ListOccurrencesResponse nextPageToken */ nextPageToken?: (string|null); + + /** ListOccurrencesResponse unreachable */ + unreachable?: (string[]|null); } /** Represents a ListOccurrencesResponse. */ @@ -9310,6 +9446,9 @@ export namespace grafeas { /** ListOccurrencesResponse nextPageToken. */ public nextPageToken: string; + /** ListOccurrencesResponse unreachable. */ + public unreachable: string[]; + /** * Creates a new ListOccurrencesResponse instance using the specified properties. * @param [properties] Properties to set @@ -9905,6 +10044,9 @@ export namespace grafeas { /** ListNotesRequest pageToken */ pageToken?: (string|null); + + /** ListNotesRequest returnPartialSuccess */ + returnPartialSuccess?: (boolean|null); } /** Represents a ListNotesRequest. */ @@ -9928,6 +10070,9 @@ export namespace grafeas { /** ListNotesRequest pageToken. */ public pageToken: string; + /** ListNotesRequest returnPartialSuccess. */ + public returnPartialSuccess: boolean; + /** * Creates a new ListNotesRequest instance using the specified properties. * @param [properties] Properties to set @@ -10014,6 +10159,9 @@ export namespace grafeas { /** ListNotesResponse nextPageToken */ nextPageToken?: (string|null); + + /** ListNotesResponse unreachable */ + unreachable?: (string[]|null); } /** Represents a ListNotesResponse. */ @@ -10031,6 +10179,9 @@ export namespace grafeas { /** ListNotesResponse nextPageToken. */ public nextPageToken: string; + /** ListNotesResponse unreachable. */ + public unreachable: string[]; + /** * Creates a new ListNotesResponse instance using the specified properties. * @param [properties] Properties to set @@ -12687,6 +12838,12 @@ export namespace grafeas { /** SecretOccurrence statuses */ statuses?: (grafeas.v1.ISecretStatus[]|null); + + /** SecretOccurrence data */ + data?: (google.protobuf.IAny|null); + + /** SecretOccurrence digest */ + digest?: (grafeas.v1.IDigest|null); } /** Represents a SecretOccurrence. */ @@ -12707,6 +12864,12 @@ export namespace grafeas { /** SecretOccurrence statuses. */ public statuses: grafeas.v1.ISecretStatus[]; + /** SecretOccurrence data. */ + public data?: (google.protobuf.IAny|null); + + /** SecretOccurrence digest. */ + public digest?: (grafeas.v1.IDigest|null); + /** * Creates a new SecretOccurrence instance using the specified properties. * @param [properties] Properties to set @@ -13009,7 +13172,27 @@ export namespace grafeas { enum SecretKind { SECRET_KIND_UNSPECIFIED = 0, SECRET_KIND_UNKNOWN = 1, - SECRET_KIND_GCP_SERVICE_ACCOUNT_KEY = 2 + SECRET_KIND_GCP_SERVICE_ACCOUNT_KEY = 2, + SECRET_KIND_GCP_API_KEY = 3, + SECRET_KIND_GCP_OAUTH2_CLIENT_CREDENTIALS = 4, + SECRET_KIND_GCP_OAUTH2_ACCESS_TOKEN = 5, + SECRET_KIND_ANTHROPIC_ADMIN_API_KEY = 6, + SECRET_KIND_ANTHROPIC_API_KEY = 7, + SECRET_KIND_AZURE_ACCESS_TOKEN = 8, + SECRET_KIND_AZURE_IDENTITY_TOKEN = 9, + SECRET_KIND_DOCKER_HUB_PERSONAL_ACCESS_TOKEN = 10, + SECRET_KIND_GITHUB_APP_REFRESH_TOKEN = 11, + SECRET_KIND_GITHUB_APP_SERVER_TO_SERVER_TOKEN = 12, + SECRET_KIND_GITHUB_APP_USER_TO_SERVER_TOKEN = 13, + SECRET_KIND_GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN = 14, + SECRET_KIND_GITHUB_FINE_GRAINED_PERSONAL_ACCESS_TOKEN = 15, + SECRET_KIND_GITHUB_OAUTH_TOKEN = 16, + SECRET_KIND_HUGGINGFACE_API_KEY = 17, + SECRET_KIND_OPENAI_API_KEY = 18, + SECRET_KIND_PERPLEXITY_API_KEY = 19, + SECRET_KIND_STRIPE_SECRET_KEY = 20, + SECRET_KIND_STRIPE_RESTRICTED_KEY = 21, + SECRET_KIND_STRIPE_WEBHOOK_SECRET = 22 } /** Properties of an UpgradeNote. */ @@ -14477,6 +14660,9 @@ export namespace grafeas { /** VulnerabilityNote cvssV2 */ cvssV2?: (grafeas.v1.ICVSS|null); + + /** VulnerabilityNote advisoryPublishTime */ + advisoryPublishTime?: (google.protobuf.ITimestamp|null); } /** Represents a VulnerabilityNote. */ @@ -14512,6 +14698,9 @@ export namespace grafeas { /** VulnerabilityNote cvssV2. */ public cvssV2?: (grafeas.v1.ICVSS|null); + /** VulnerabilityNote advisoryPublishTime. */ + public advisoryPublishTime?: (google.protobuf.ITimestamp|null); + /** * Creates a new VulnerabilityNote instance using the specified properties. * @param [properties] Properties to set @@ -15033,6 +15222,9 @@ export namespace grafeas { /** VulnerabilityOccurrence extraDetails */ extraDetails?: (string|null); + + /** VulnerabilityOccurrence risk */ + risk?: (grafeas.v1.IRisk|null); } /** Represents a VulnerabilityOccurrence. */ @@ -15086,6 +15278,9 @@ export namespace grafeas { /** VulnerabilityOccurrence extraDetails. */ public extraDetails: string; + /** VulnerabilityOccurrence risk. */ + public risk?: (grafeas.v1.IRisk|null); + /** * Creates a new VulnerabilityOccurrence instance using the specified properties. * @param [properties] Properties to set @@ -15456,6 +15651,309 @@ export namespace grafeas { public static getTypeUrl(typeUrlPrefix?: string): string; } } + + /** Properties of a Risk. */ + interface IRisk { + + /** Risk cisaKev */ + cisaKev?: (grafeas.v1.ICISAKnownExploitedVulnerabilities|null); + + /** Risk epss */ + epss?: (grafeas.v1.IExploitPredictionScoringSystem|null); + } + + /** Represents a Risk. */ + class Risk implements IRisk { + + /** + * Constructs a new Risk. + * @param [properties] Properties to set + */ + constructor(properties?: grafeas.v1.IRisk); + + /** Risk cisaKev. */ + public cisaKev?: (grafeas.v1.ICISAKnownExploitedVulnerabilities|null); + + /** Risk epss. */ + public epss?: (grafeas.v1.IExploitPredictionScoringSystem|null); + + /** + * Creates a new Risk instance using the specified properties. + * @param [properties] Properties to set + * @returns Risk instance + */ + public static create(properties?: grafeas.v1.IRisk): grafeas.v1.Risk; + + /** + * Encodes the specified Risk message. Does not implicitly {@link grafeas.v1.Risk.verify|verify} messages. + * @param message Risk message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: grafeas.v1.IRisk, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Risk message, length delimited. Does not implicitly {@link grafeas.v1.Risk.verify|verify} messages. + * @param message Risk message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: grafeas.v1.IRisk, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Risk message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Risk + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): grafeas.v1.Risk; + + /** + * Decodes a Risk message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Risk + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): grafeas.v1.Risk; + + /** + * Verifies a Risk message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Risk message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Risk + */ + public static fromObject(object: { [k: string]: any }): grafeas.v1.Risk; + + /** + * Creates a plain object from a Risk message. Also converts values to other types if specified. + * @param message Risk + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: grafeas.v1.Risk, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Risk to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Risk + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of a CISAKnownExploitedVulnerabilities. */ + interface ICISAKnownExploitedVulnerabilities { + + /** CISAKnownExploitedVulnerabilities knownRansomwareCampaignUse */ + knownRansomwareCampaignUse?: (string|null); + } + + /** Represents a CISAKnownExploitedVulnerabilities. */ + class CISAKnownExploitedVulnerabilities implements ICISAKnownExploitedVulnerabilities { + + /** + * Constructs a new CISAKnownExploitedVulnerabilities. + * @param [properties] Properties to set + */ + constructor(properties?: grafeas.v1.ICISAKnownExploitedVulnerabilities); + + /** CISAKnownExploitedVulnerabilities knownRansomwareCampaignUse. */ + public knownRansomwareCampaignUse: string; + + /** + * Creates a new CISAKnownExploitedVulnerabilities instance using the specified properties. + * @param [properties] Properties to set + * @returns CISAKnownExploitedVulnerabilities instance + */ + public static create(properties?: grafeas.v1.ICISAKnownExploitedVulnerabilities): grafeas.v1.CISAKnownExploitedVulnerabilities; + + /** + * Encodes the specified CISAKnownExploitedVulnerabilities message. Does not implicitly {@link grafeas.v1.CISAKnownExploitedVulnerabilities.verify|verify} messages. + * @param message CISAKnownExploitedVulnerabilities message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: grafeas.v1.ICISAKnownExploitedVulnerabilities, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CISAKnownExploitedVulnerabilities message, length delimited. Does not implicitly {@link grafeas.v1.CISAKnownExploitedVulnerabilities.verify|verify} messages. + * @param message CISAKnownExploitedVulnerabilities message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: grafeas.v1.ICISAKnownExploitedVulnerabilities, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CISAKnownExploitedVulnerabilities message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CISAKnownExploitedVulnerabilities + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): grafeas.v1.CISAKnownExploitedVulnerabilities; + + /** + * Decodes a CISAKnownExploitedVulnerabilities message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CISAKnownExploitedVulnerabilities + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): grafeas.v1.CISAKnownExploitedVulnerabilities; + + /** + * Verifies a CISAKnownExploitedVulnerabilities message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CISAKnownExploitedVulnerabilities message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CISAKnownExploitedVulnerabilities + */ + public static fromObject(object: { [k: string]: any }): grafeas.v1.CISAKnownExploitedVulnerabilities; + + /** + * Creates a plain object from a CISAKnownExploitedVulnerabilities message. Also converts values to other types if specified. + * @param message CISAKnownExploitedVulnerabilities + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: grafeas.v1.CISAKnownExploitedVulnerabilities, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CISAKnownExploitedVulnerabilities to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CISAKnownExploitedVulnerabilities + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of an ExploitPredictionScoringSystem. */ + interface IExploitPredictionScoringSystem { + + /** ExploitPredictionScoringSystem percentile */ + percentile?: (number|null); + + /** ExploitPredictionScoringSystem score */ + score?: (number|null); + } + + /** Represents an ExploitPredictionScoringSystem. */ + class ExploitPredictionScoringSystem implements IExploitPredictionScoringSystem { + + /** + * Constructs a new ExploitPredictionScoringSystem. + * @param [properties] Properties to set + */ + constructor(properties?: grafeas.v1.IExploitPredictionScoringSystem); + + /** ExploitPredictionScoringSystem percentile. */ + public percentile: number; + + /** ExploitPredictionScoringSystem score. */ + public score: number; + + /** + * Creates a new ExploitPredictionScoringSystem instance using the specified properties. + * @param [properties] Properties to set + * @returns ExploitPredictionScoringSystem instance + */ + public static create(properties?: grafeas.v1.IExploitPredictionScoringSystem): grafeas.v1.ExploitPredictionScoringSystem; + + /** + * Encodes the specified ExploitPredictionScoringSystem message. Does not implicitly {@link grafeas.v1.ExploitPredictionScoringSystem.verify|verify} messages. + * @param message ExploitPredictionScoringSystem message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: grafeas.v1.IExploitPredictionScoringSystem, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ExploitPredictionScoringSystem message, length delimited. Does not implicitly {@link grafeas.v1.ExploitPredictionScoringSystem.verify|verify} messages. + * @param message ExploitPredictionScoringSystem message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: grafeas.v1.IExploitPredictionScoringSystem, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an ExploitPredictionScoringSystem message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ExploitPredictionScoringSystem + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): grafeas.v1.ExploitPredictionScoringSystem; + + /** + * Decodes an ExploitPredictionScoringSystem message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ExploitPredictionScoringSystem + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): grafeas.v1.ExploitPredictionScoringSystem; + + /** + * Verifies an ExploitPredictionScoringSystem message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an ExploitPredictionScoringSystem message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ExploitPredictionScoringSystem + */ + public static fromObject(object: { [k: string]: any }): grafeas.v1.ExploitPredictionScoringSystem; + + /** + * Creates a plain object from an ExploitPredictionScoringSystem message. Also converts values to other types if specified. + * @param message ExploitPredictionScoringSystem + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: grafeas.v1.ExploitPredictionScoringSystem, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ExploitPredictionScoringSystem to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ExploitPredictionScoringSystem + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } } } diff --git a/packages/grafeas/protos/protos.js b/packages/grafeas/protos/protos.js index 1e4a80488270..6b53ea61a665 100644 --- a/packages/grafeas/protos/protos.js +++ b/packages/grafeas/protos/protos.js @@ -68,7 +68,7 @@ function AttestationNote(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -133,9 +133,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AttestationNote.decode = function decode(reader, length, error) { + AttestationNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.AttestationNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -143,11 +147,11 @@ break; switch (tag >>> 3) { case 1: { - message.hint = $root.grafeas.v1.AttestationNote.Hint.decode(reader, reader.uint32()); + message.hint = $root.grafeas.v1.AttestationNote.Hint.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -178,11 +182,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AttestationNote.verify = function verify(message) { + AttestationNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.hint != null && message.hasOwnProperty("hint")) { - var error = $root.grafeas.v1.AttestationNote.Hint.verify(message.hint); + var error = $root.grafeas.v1.AttestationNote.Hint.verify(message.hint, long + 1); if (error) return "hint." + error; } @@ -197,14 +205,18 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.AttestationNote} AttestationNote */ - AttestationNote.fromObject = function fromObject(object) { + AttestationNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.AttestationNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.AttestationNote(); if (object.hint != null) { if (typeof object.hint !== "object") throw TypeError(".grafeas.v1.AttestationNote.hint: object expected"); - message.hint = $root.grafeas.v1.AttestationNote.Hint.fromObject(object.hint); + message.hint = $root.grafeas.v1.AttestationNote.Hint.fromObject(object.hint, long + 1); } return message; }; @@ -275,7 +287,7 @@ function Hint(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -340,9 +352,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Hint.decode = function decode(reader, length, error) { + Hint.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.AttestationNote.Hint(); while (reader.pos < end) { var tag = reader.uint32(); @@ -354,7 +370,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -385,9 +401,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Hint.verify = function verify(message) { + Hint.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.humanReadableName != null && message.hasOwnProperty("humanReadableName")) if (!$util.isString(message.humanReadableName)) return "humanReadableName: string expected"; @@ -402,9 +422,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.AttestationNote.Hint} Hint */ - Hint.fromObject = function fromObject(object) { + Hint.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.AttestationNote.Hint) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.AttestationNote.Hint(); if (object.humanReadableName != null) message.humanReadableName = String(object.humanReadableName); @@ -483,7 +507,7 @@ function Jwt(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -548,9 +572,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Jwt.decode = function decode(reader, length, error) { + Jwt.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Jwt(); while (reader.pos < end) { var tag = reader.uint32(); @@ -562,7 +590,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -593,9 +621,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Jwt.verify = function verify(message) { + Jwt.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.compactJwt != null && message.hasOwnProperty("compactJwt")) if (!$util.isString(message.compactJwt)) return "compactJwt: string expected"; @@ -610,9 +642,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Jwt} Jwt */ - Jwt.fromObject = function fromObject(object) { + Jwt.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Jwt) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Jwt(); if (object.compactJwt != null) message.compactJwt = String(object.compactJwt); @@ -692,7 +728,7 @@ this.jwts = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -779,9 +815,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AttestationOccurrence.decode = function decode(reader, length, error) { + AttestationOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.AttestationOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -795,17 +835,17 @@ case 2: { if (!(message.signatures && message.signatures.length)) message.signatures = []; - message.signatures.push($root.grafeas.v1.Signature.decode(reader, reader.uint32())); + message.signatures.push($root.grafeas.v1.Signature.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.jwts && message.jwts.length)) message.jwts = []; - message.jwts.push($root.grafeas.v1.Jwt.decode(reader, reader.uint32())); + message.jwts.push($root.grafeas.v1.Jwt.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -836,9 +876,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AttestationOccurrence.verify = function verify(message) { + AttestationOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.serializedPayload != null && message.hasOwnProperty("serializedPayload")) if (!(message.serializedPayload && typeof message.serializedPayload.length === "number" || $util.isString(message.serializedPayload))) return "serializedPayload: buffer expected"; @@ -846,7 +890,7 @@ if (!Array.isArray(message.signatures)) return "signatures: array expected"; for (var i = 0; i < message.signatures.length; ++i) { - var error = $root.grafeas.v1.Signature.verify(message.signatures[i]); + var error = $root.grafeas.v1.Signature.verify(message.signatures[i], long + 1); if (error) return "signatures." + error; } @@ -855,7 +899,7 @@ if (!Array.isArray(message.jwts)) return "jwts: array expected"; for (var i = 0; i < message.jwts.length; ++i) { - var error = $root.grafeas.v1.Jwt.verify(message.jwts[i]); + var error = $root.grafeas.v1.Jwt.verify(message.jwts[i], long + 1); if (error) return "jwts." + error; } @@ -871,9 +915,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.AttestationOccurrence} AttestationOccurrence */ - AttestationOccurrence.fromObject = function fromObject(object) { + AttestationOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.AttestationOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.AttestationOccurrence(); if (object.serializedPayload != null) if (typeof object.serializedPayload === "string") @@ -887,7 +935,7 @@ for (var i = 0; i < object.signatures.length; ++i) { if (typeof object.signatures[i] !== "object") throw TypeError(".grafeas.v1.AttestationOccurrence.signatures: object expected"); - message.signatures[i] = $root.grafeas.v1.Signature.fromObject(object.signatures[i]); + message.signatures[i] = $root.grafeas.v1.Signature.fromObject(object.signatures[i], long + 1); } } if (object.jwts) { @@ -897,7 +945,7 @@ for (var i = 0; i < object.jwts.length; ++i) { if (typeof object.jwts[i] !== "object") throw TypeError(".grafeas.v1.AttestationOccurrence.jwts: object expected"); - message.jwts[i] = $root.grafeas.v1.Jwt.fromObject(object.jwts[i]); + message.jwts[i] = $root.grafeas.v1.Jwt.fromObject(object.jwts[i], long + 1); } } return message; @@ -1031,7 +1079,7 @@ function RelatedUrl(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1106,9 +1154,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RelatedUrl.decode = function decode(reader, length, error) { + RelatedUrl.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.RelatedUrl(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1124,7 +1176,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1155,9 +1207,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RelatedUrl.verify = function verify(message) { + RelatedUrl.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.url != null && message.hasOwnProperty("url")) if (!$util.isString(message.url)) return "url: string expected"; @@ -1175,9 +1231,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.RelatedUrl} RelatedUrl */ - RelatedUrl.fromObject = function fromObject(object) { + RelatedUrl.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.RelatedUrl) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.RelatedUrl(); if (object.url != null) message.url = String(object.url); @@ -1260,7 +1320,7 @@ function Signature(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1335,9 +1395,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Signature.decode = function decode(reader, length, error) { + Signature.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Signature(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1353,7 +1417,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1384,9 +1448,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Signature.verify = function verify(message) { + Signature.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.signature != null && message.hasOwnProperty("signature")) if (!(message.signature && typeof message.signature.length === "number" || $util.isString(message.signature))) return "signature: buffer expected"; @@ -1404,9 +1472,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Signature} Signature */ - Signature.fromObject = function fromObject(object) { + Signature.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Signature) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Signature(); if (object.signature != null) if (typeof object.signature === "string") @@ -1500,7 +1572,7 @@ this.signatures = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1586,9 +1658,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Envelope.decode = function decode(reader, length, error) { + Envelope.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Envelope(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1606,11 +1682,11 @@ case 3: { if (!(message.signatures && message.signatures.length)) message.signatures = []; - message.signatures.push($root.grafeas.v1.EnvelopeSignature.decode(reader, reader.uint32())); + message.signatures.push($root.grafeas.v1.EnvelopeSignature.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1641,9 +1717,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Envelope.verify = function verify(message) { + Envelope.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.payload != null && message.hasOwnProperty("payload")) if (!(message.payload && typeof message.payload.length === "number" || $util.isString(message.payload))) return "payload: buffer expected"; @@ -1654,7 +1734,7 @@ if (!Array.isArray(message.signatures)) return "signatures: array expected"; for (var i = 0; i < message.signatures.length; ++i) { - var error = $root.grafeas.v1.EnvelopeSignature.verify(message.signatures[i]); + var error = $root.grafeas.v1.EnvelopeSignature.verify(message.signatures[i], long + 1); if (error) return "signatures." + error; } @@ -1670,9 +1750,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Envelope} Envelope */ - Envelope.fromObject = function fromObject(object) { + Envelope.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Envelope) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Envelope(); if (object.payload != null) if (typeof object.payload === "string") @@ -1688,7 +1772,7 @@ for (var i = 0; i < object.signatures.length; ++i) { if (typeof object.signatures[i] !== "object") throw TypeError(".grafeas.v1.Envelope.signatures: object expected"); - message.signatures[i] = $root.grafeas.v1.EnvelopeSignature.fromObject(object.signatures[i]); + message.signatures[i] = $root.grafeas.v1.EnvelopeSignature.fromObject(object.signatures[i], long + 1); } } return message; @@ -1781,7 +1865,7 @@ function EnvelopeSignature(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1856,9 +1940,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnvelopeSignature.decode = function decode(reader, length, error) { + EnvelopeSignature.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.EnvelopeSignature(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1874,7 +1962,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1905,9 +1993,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnvelopeSignature.verify = function verify(message) { + EnvelopeSignature.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.sig != null && message.hasOwnProperty("sig")) if (!(message.sig && typeof message.sig.length === "number" || $util.isString(message.sig))) return "sig: buffer expected"; @@ -1925,9 +2017,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.EnvelopeSignature} EnvelopeSignature */ - EnvelopeSignature.fromObject = function fromObject(object) { + EnvelopeSignature.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.EnvelopeSignature) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.EnvelopeSignature(); if (object.sig != null) if (typeof object.sig === "string") @@ -2006,6 +2102,7 @@ * @interface IFileLocation * @property {string|null} [filePath] FileLocation filePath * @property {grafeas.v1.ILayerDetails|null} [layerDetails] FileLocation layerDetails + * @property {number|null} [lineNumber] FileLocation lineNumber */ /** @@ -2019,7 +2116,7 @@ function FileLocation(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2039,6 +2136,14 @@ */ FileLocation.prototype.layerDetails = null; + /** + * FileLocation lineNumber. + * @member {number} lineNumber + * @memberof grafeas.v1.FileLocation + * @instance + */ + FileLocation.prototype.lineNumber = 0; + /** * Creates a new FileLocation instance using the specified properties. * @function create @@ -2067,6 +2172,8 @@ writer.uint32(/* id 1, wireType 2 =*/10).string(message.filePath); if (message.layerDetails != null && Object.hasOwnProperty.call(message, "layerDetails")) $root.grafeas.v1.LayerDetails.encode(message.layerDetails, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.lineNumber != null && Object.hasOwnProperty.call(message, "lineNumber")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.lineNumber); return writer; }; @@ -2094,9 +2201,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileLocation.decode = function decode(reader, length, error) { + FileLocation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.FileLocation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2108,11 +2219,15 @@ break; } case 2: { - message.layerDetails = $root.grafeas.v1.LayerDetails.decode(reader, reader.uint32()); + message.layerDetails = $root.grafeas.v1.LayerDetails.decode(reader, reader.uint32(), undefined, long + 1); + break; + } + case 3: { + message.lineNumber = reader.int32(); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2143,17 +2258,24 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileLocation.verify = function verify(message) { + FileLocation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.filePath != null && message.hasOwnProperty("filePath")) if (!$util.isString(message.filePath)) return "filePath: string expected"; if (message.layerDetails != null && message.hasOwnProperty("layerDetails")) { - var error = $root.grafeas.v1.LayerDetails.verify(message.layerDetails); + var error = $root.grafeas.v1.LayerDetails.verify(message.layerDetails, long + 1); if (error) return "layerDetails." + error; } + if (message.lineNumber != null && message.hasOwnProperty("lineNumber")) + if (!$util.isInteger(message.lineNumber)) + return "lineNumber: integer expected"; return null; }; @@ -2165,17 +2287,23 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.FileLocation} FileLocation */ - FileLocation.fromObject = function fromObject(object) { + FileLocation.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.FileLocation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.FileLocation(); if (object.filePath != null) message.filePath = String(object.filePath); if (object.layerDetails != null) { if (typeof object.layerDetails !== "object") throw TypeError(".grafeas.v1.FileLocation.layerDetails: object expected"); - message.layerDetails = $root.grafeas.v1.LayerDetails.fromObject(object.layerDetails); + message.layerDetails = $root.grafeas.v1.LayerDetails.fromObject(object.layerDetails, long + 1); } + if (object.lineNumber != null) + message.lineNumber = object.lineNumber | 0; return message; }; @@ -2195,11 +2323,14 @@ if (options.defaults) { object.filePath = ""; object.layerDetails = null; + object.lineNumber = 0; } if (message.filePath != null && message.hasOwnProperty("filePath")) object.filePath = message.filePath; if (message.layerDetails != null && message.hasOwnProperty("layerDetails")) object.layerDetails = $root.grafeas.v1.LayerDetails.toObject(message.layerDetails, options); + if (message.lineNumber != null && message.hasOwnProperty("lineNumber")) + object.lineNumber = message.lineNumber; return object; }; @@ -2241,6 +2372,7 @@ * @property {string|null} [name] BaseImage name * @property {string|null} [repository] BaseImage repository * @property {number|null} [layerCount] BaseImage layerCount + * @property {string|null} [registry] BaseImage registry */ /** @@ -2254,7 +2386,7 @@ function BaseImage(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2282,6 +2414,14 @@ */ BaseImage.prototype.layerCount = 0; + /** + * BaseImage registry. + * @member {string} registry + * @memberof grafeas.v1.BaseImage + * @instance + */ + BaseImage.prototype.registry = ""; + /** * Creates a new BaseImage instance using the specified properties. * @function create @@ -2312,6 +2452,8 @@ writer.uint32(/* id 2, wireType 2 =*/18).string(message.repository); if (message.layerCount != null && Object.hasOwnProperty.call(message, "layerCount")) writer.uint32(/* id 3, wireType 0 =*/24).int32(message.layerCount); + if (message.registry != null && Object.hasOwnProperty.call(message, "registry")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.registry); return writer; }; @@ -2339,9 +2481,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BaseImage.decode = function decode(reader, length, error) { + BaseImage.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.BaseImage(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2360,8 +2506,12 @@ message.layerCount = reader.int32(); break; } + case 4: { + message.registry = reader.string(); + break; + } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2392,9 +2542,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BaseImage.verify = function verify(message) { + BaseImage.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -2404,6 +2558,9 @@ if (message.layerCount != null && message.hasOwnProperty("layerCount")) if (!$util.isInteger(message.layerCount)) return "layerCount: integer expected"; + if (message.registry != null && message.hasOwnProperty("registry")) + if (!$util.isString(message.registry)) + return "registry: string expected"; return null; }; @@ -2415,9 +2572,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.BaseImage} BaseImage */ - BaseImage.fromObject = function fromObject(object) { + BaseImage.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.BaseImage) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.BaseImage(); if (object.name != null) message.name = String(object.name); @@ -2425,6 +2586,8 @@ message.repository = String(object.repository); if (object.layerCount != null) message.layerCount = object.layerCount | 0; + if (object.registry != null) + message.registry = String(object.registry); return message; }; @@ -2445,6 +2608,7 @@ object.name = ""; object.repository = ""; object.layerCount = 0; + object.registry = ""; } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; @@ -2452,6 +2616,8 @@ object.repository = message.repository; if (message.layerCount != null && message.hasOwnProperty("layerCount")) object.layerCount = message.layerCount; + if (message.registry != null && message.hasOwnProperty("registry")) + object.registry = message.registry; return object; }; @@ -2509,7 +2675,7 @@ this.baseImages = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2615,9 +2781,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LayerDetails.decode = function decode(reader, length, error) { + LayerDetails.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.LayerDetails(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2643,11 +2813,11 @@ case 4: { if (!(message.baseImages && message.baseImages.length)) message.baseImages = []; - message.baseImages.push($root.grafeas.v1.BaseImage.decode(reader, reader.uint32())); + message.baseImages.push($root.grafeas.v1.BaseImage.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2678,9 +2848,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LayerDetails.verify = function verify(message) { + LayerDetails.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.index != null && message.hasOwnProperty("index")) if (!$util.isInteger(message.index)) return "index: integer expected"; @@ -2697,7 +2871,7 @@ if (!Array.isArray(message.baseImages)) return "baseImages: array expected"; for (var i = 0; i < message.baseImages.length; ++i) { - var error = $root.grafeas.v1.BaseImage.verify(message.baseImages[i]); + var error = $root.grafeas.v1.BaseImage.verify(message.baseImages[i], long + 1); if (error) return "baseImages." + error; } @@ -2713,9 +2887,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.LayerDetails} LayerDetails */ - LayerDetails.fromObject = function fromObject(object) { + LayerDetails.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.LayerDetails) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.LayerDetails(); if (object.index != null) message.index = object.index | 0; @@ -2732,7 +2910,7 @@ for (var i = 0; i < object.baseImages.length; ++i) { if (typeof object.baseImages[i] !== "object") throw TypeError(".grafeas.v1.LayerDetails.baseImages: object expected"); - message.baseImages[i] = $root.grafeas.v1.BaseImage.fromObject(object.baseImages[i]); + message.baseImages[i] = $root.grafeas.v1.BaseImage.fromObject(object.baseImages[i], long + 1); } } return message; @@ -2825,7 +3003,7 @@ function License(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2900,9 +3078,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - License.decode = function decode(reader, length, error) { + License.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.License(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2918,7 +3100,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2949,9 +3131,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - License.verify = function verify(message) { + License.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.expression != null && message.hasOwnProperty("expression")) if (!$util.isString(message.expression)) return "expression: string expected"; @@ -2969,9 +3155,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.License} License */ - License.fromObject = function fromObject(object) { + License.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.License) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.License(); if (object.expression != null) message.expression = String(object.expression); @@ -3054,7 +3244,7 @@ function Digest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3129,9 +3319,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Digest.decode = function decode(reader, length, error) { + Digest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Digest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3147,7 +3341,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3178,9 +3372,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Digest.verify = function verify(message) { + Digest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.algo != null && message.hasOwnProperty("algo")) if (!$util.isString(message.algo)) return "algo: string expected"; @@ -3198,9 +3396,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Digest} Digest */ - Digest.fromObject = function fromObject(object) { + Digest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Digest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Digest(); if (object.algo != null) message.algo = String(object.algo); @@ -3291,7 +3493,7 @@ function BuildNote(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3356,9 +3558,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BuildNote.decode = function decode(reader, length, error) { + BuildNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.BuildNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3370,7 +3576,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3401,9 +3607,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BuildNote.verify = function verify(message) { + BuildNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.builderVersion != null && message.hasOwnProperty("builderVersion")) if (!$util.isString(message.builderVersion)) return "builderVersion: string expected"; @@ -3418,9 +3628,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.BuildNote} BuildNote */ - BuildNote.fromObject = function fromObject(object) { + BuildNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.BuildNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.BuildNote(); if (object.builderVersion != null) message.builderVersion = String(object.builderVersion); @@ -3500,7 +3714,7 @@ function BuildOccurrence(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3605,9 +3819,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BuildOccurrence.decode = function decode(reader, length, error) { + BuildOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.BuildOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3615,7 +3833,7 @@ break; switch (tag >>> 3) { case 1: { - message.provenance = $root.grafeas.v1.BuildProvenance.decode(reader, reader.uint32()); + message.provenance = $root.grafeas.v1.BuildProvenance.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -3623,19 +3841,19 @@ break; } case 3: { - message.intotoProvenance = $root.grafeas.v1.InTotoProvenance.decode(reader, reader.uint32()); + message.intotoProvenance = $root.grafeas.v1.InTotoProvenance.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.intotoStatement = $root.grafeas.v1.InTotoStatement.decode(reader, reader.uint32()); + message.intotoStatement = $root.grafeas.v1.InTotoStatement.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.inTotoSlsaProvenanceV1 = $root.grafeas.v1.InTotoSlsaProvenanceV1.decode(reader, reader.uint32()); + message.inTotoSlsaProvenanceV1 = $root.grafeas.v1.InTotoSlsaProvenanceV1.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3666,11 +3884,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BuildOccurrence.verify = function verify(message) { + BuildOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.provenance != null && message.hasOwnProperty("provenance")) { - var error = $root.grafeas.v1.BuildProvenance.verify(message.provenance); + var error = $root.grafeas.v1.BuildProvenance.verify(message.provenance, long + 1); if (error) return "provenance." + error; } @@ -3678,17 +3900,17 @@ if (!$util.isString(message.provenanceBytes)) return "provenanceBytes: string expected"; if (message.intotoProvenance != null && message.hasOwnProperty("intotoProvenance")) { - var error = $root.grafeas.v1.InTotoProvenance.verify(message.intotoProvenance); + var error = $root.grafeas.v1.InTotoProvenance.verify(message.intotoProvenance, long + 1); if (error) return "intotoProvenance." + error; } if (message.intotoStatement != null && message.hasOwnProperty("intotoStatement")) { - var error = $root.grafeas.v1.InTotoStatement.verify(message.intotoStatement); + var error = $root.grafeas.v1.InTotoStatement.verify(message.intotoStatement, long + 1); if (error) return "intotoStatement." + error; } if (message.inTotoSlsaProvenanceV1 != null && message.hasOwnProperty("inTotoSlsaProvenanceV1")) { - var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.verify(message.inTotoSlsaProvenanceV1); + var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.verify(message.inTotoSlsaProvenanceV1, long + 1); if (error) return "inTotoSlsaProvenanceV1." + error; } @@ -3703,31 +3925,35 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.BuildOccurrence} BuildOccurrence */ - BuildOccurrence.fromObject = function fromObject(object) { + BuildOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.BuildOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.BuildOccurrence(); if (object.provenance != null) { if (typeof object.provenance !== "object") throw TypeError(".grafeas.v1.BuildOccurrence.provenance: object expected"); - message.provenance = $root.grafeas.v1.BuildProvenance.fromObject(object.provenance); + message.provenance = $root.grafeas.v1.BuildProvenance.fromObject(object.provenance, long + 1); } if (object.provenanceBytes != null) message.provenanceBytes = String(object.provenanceBytes); if (object.intotoProvenance != null) { if (typeof object.intotoProvenance !== "object") throw TypeError(".grafeas.v1.BuildOccurrence.intotoProvenance: object expected"); - message.intotoProvenance = $root.grafeas.v1.InTotoProvenance.fromObject(object.intotoProvenance); + message.intotoProvenance = $root.grafeas.v1.InTotoProvenance.fromObject(object.intotoProvenance, long + 1); } if (object.intotoStatement != null) { if (typeof object.intotoStatement !== "object") throw TypeError(".grafeas.v1.BuildOccurrence.intotoStatement: object expected"); - message.intotoStatement = $root.grafeas.v1.InTotoStatement.fromObject(object.intotoStatement); + message.intotoStatement = $root.grafeas.v1.InTotoStatement.fromObject(object.intotoStatement, long + 1); } if (object.inTotoSlsaProvenanceV1 != null) { if (typeof object.inTotoSlsaProvenanceV1 !== "object") throw TypeError(".grafeas.v1.BuildOccurrence.inTotoSlsaProvenanceV1: object expected"); - message.inTotoSlsaProvenanceV1 = $root.grafeas.v1.InTotoSlsaProvenanceV1.fromObject(object.inTotoSlsaProvenanceV1); + message.inTotoSlsaProvenanceV1 = $root.grafeas.v1.InTotoSlsaProvenanceV1.fromObject(object.inTotoSlsaProvenanceV1, long + 1); } return message; }; @@ -3820,7 +4046,7 @@ this.environment = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3927,9 +4153,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Recipe.decode = function decode(reader, length, error) { + Recipe.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Recipe(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3951,17 +4181,17 @@ case 4: { if (!(message["arguments"] && message["arguments"].length)) message["arguments"] = []; - message["arguments"].push($root.google.protobuf.Any.decode(reader, reader.uint32())); + message["arguments"].push($root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.environment && message.environment.length)) message.environment = []; - message.environment.push($root.google.protobuf.Any.decode(reader, reader.uint32())); + message.environment.push($root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3992,9 +4222,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Recipe.verify = function verify(message) { + Recipe.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -4008,7 +4242,7 @@ if (!Array.isArray(message["arguments"])) return "arguments: array expected"; for (var i = 0; i < message["arguments"].length; ++i) { - var error = $root.google.protobuf.Any.verify(message["arguments"][i]); + var error = $root.google.protobuf.Any.verify(message["arguments"][i], long + 1); if (error) return "arguments." + error; } @@ -4017,7 +4251,7 @@ if (!Array.isArray(message.environment)) return "environment: array expected"; for (var i = 0; i < message.environment.length; ++i) { - var error = $root.google.protobuf.Any.verify(message.environment[i]); + var error = $root.google.protobuf.Any.verify(message.environment[i], long + 1); if (error) return "environment." + error; } @@ -4033,9 +4267,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Recipe} Recipe */ - Recipe.fromObject = function fromObject(object) { + Recipe.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Recipe) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Recipe(); if (object.type != null) message.type = String(object.type); @@ -4057,7 +4295,7 @@ for (var i = 0; i < object["arguments"].length; ++i) { if (typeof object["arguments"][i] !== "object") throw TypeError(".grafeas.v1.Recipe.arguments: object expected"); - message["arguments"][i] = $root.google.protobuf.Any.fromObject(object["arguments"][i]); + message["arguments"][i] = $root.google.protobuf.Any.fromObject(object["arguments"][i], long + 1); } } if (object.environment) { @@ -4067,7 +4305,7 @@ for (var i = 0; i < object.environment.length; ++i) { if (typeof object.environment[i] !== "object") throw TypeError(".grafeas.v1.Recipe.environment: object expected"); - message.environment[i] = $root.google.protobuf.Any.fromObject(object.environment[i]); + message.environment[i] = $root.google.protobuf.Any.fromObject(object.environment[i], long + 1); } } return message; @@ -4172,7 +4410,7 @@ function Completeness(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4257,9 +4495,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Completeness.decode = function decode(reader, length, error) { + Completeness.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Completeness(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4279,7 +4521,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4310,9 +4552,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Completeness.verify = function verify(message) { + Completeness.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message["arguments"] != null && message.hasOwnProperty("arguments")) if (typeof message["arguments"] !== "boolean") return "arguments: boolean expected"; @@ -4333,9 +4579,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Completeness} Completeness */ - Completeness.fromObject = function fromObject(object) { + Completeness.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Completeness) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Completeness(); if (object["arguments"] != null) message["arguments"] = Boolean(object["arguments"]); @@ -4426,7 +4676,7 @@ function Metadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4531,9 +4781,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Metadata.decode = function decode(reader, length, error) { + Metadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Metadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4545,15 +4799,15 @@ break; } case 2: { - message.buildStartedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.buildStartedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.buildFinishedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.buildFinishedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.completeness = $root.grafeas.v1.Completeness.decode(reader, reader.uint32()); + message.completeness = $root.grafeas.v1.Completeness.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -4561,7 +4815,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4592,24 +4846,28 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Metadata.verify = function verify(message) { + Metadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.buildInvocationId != null && message.hasOwnProperty("buildInvocationId")) if (!$util.isString(message.buildInvocationId)) return "buildInvocationId: string expected"; if (message.buildStartedOn != null && message.hasOwnProperty("buildStartedOn")) { - var error = $root.google.protobuf.Timestamp.verify(message.buildStartedOn); + var error = $root.google.protobuf.Timestamp.verify(message.buildStartedOn, long + 1); if (error) return "buildStartedOn." + error; } if (message.buildFinishedOn != null && message.hasOwnProperty("buildFinishedOn")) { - var error = $root.google.protobuf.Timestamp.verify(message.buildFinishedOn); + var error = $root.google.protobuf.Timestamp.verify(message.buildFinishedOn, long + 1); if (error) return "buildFinishedOn." + error; } if (message.completeness != null && message.hasOwnProperty("completeness")) { - var error = $root.grafeas.v1.Completeness.verify(message.completeness); + var error = $root.grafeas.v1.Completeness.verify(message.completeness, long + 1); if (error) return "completeness." + error; } @@ -4627,26 +4885,30 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Metadata} Metadata */ - Metadata.fromObject = function fromObject(object) { + Metadata.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Metadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Metadata(); if (object.buildInvocationId != null) message.buildInvocationId = String(object.buildInvocationId); if (object.buildStartedOn != null) { if (typeof object.buildStartedOn !== "object") throw TypeError(".grafeas.v1.Metadata.buildStartedOn: object expected"); - message.buildStartedOn = $root.google.protobuf.Timestamp.fromObject(object.buildStartedOn); + message.buildStartedOn = $root.google.protobuf.Timestamp.fromObject(object.buildStartedOn, long + 1); } if (object.buildFinishedOn != null) { if (typeof object.buildFinishedOn !== "object") throw TypeError(".grafeas.v1.Metadata.buildFinishedOn: object expected"); - message.buildFinishedOn = $root.google.protobuf.Timestamp.fromObject(object.buildFinishedOn); + message.buildFinishedOn = $root.google.protobuf.Timestamp.fromObject(object.buildFinishedOn, long + 1); } if (object.completeness != null) { if (typeof object.completeness !== "object") throw TypeError(".grafeas.v1.Metadata.completeness: object expected"); - message.completeness = $root.grafeas.v1.Completeness.fromObject(object.completeness); + message.completeness = $root.grafeas.v1.Completeness.fromObject(object.completeness, long + 1); } if (object.reproducible != null) message.reproducible = Boolean(object.reproducible); @@ -4735,7 +4997,7 @@ function BuilderConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4800,9 +5062,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BuilderConfig.decode = function decode(reader, length, error) { + BuilderConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.BuilderConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4814,7 +5080,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4845,9 +5111,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BuilderConfig.verify = function verify(message) { + BuilderConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -4862,9 +5132,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.BuilderConfig} BuilderConfig */ - BuilderConfig.fromObject = function fromObject(object) { + BuilderConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.BuilderConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.BuilderConfig(); if (object.id != null) message.id = String(object.id); @@ -4944,7 +5218,7 @@ this.materials = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5040,9 +5314,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - InTotoProvenance.decode = function decode(reader, length, error) { + InTotoProvenance.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.InTotoProvenance(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5050,15 +5328,15 @@ break; switch (tag >>> 3) { case 1: { - message.builderConfig = $root.grafeas.v1.BuilderConfig.decode(reader, reader.uint32()); + message.builderConfig = $root.grafeas.v1.BuilderConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.recipe = $root.grafeas.v1.Recipe.decode(reader, reader.uint32()); + message.recipe = $root.grafeas.v1.Recipe.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.metadata = $root.grafeas.v1.Metadata.decode(reader, reader.uint32()); + message.metadata = $root.grafeas.v1.Metadata.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -5068,7 +5346,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5099,21 +5377,25 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - InTotoProvenance.verify = function verify(message) { + InTotoProvenance.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.builderConfig != null && message.hasOwnProperty("builderConfig")) { - var error = $root.grafeas.v1.BuilderConfig.verify(message.builderConfig); + var error = $root.grafeas.v1.BuilderConfig.verify(message.builderConfig, long + 1); if (error) return "builderConfig." + error; } if (message.recipe != null && message.hasOwnProperty("recipe")) { - var error = $root.grafeas.v1.Recipe.verify(message.recipe); + var error = $root.grafeas.v1.Recipe.verify(message.recipe, long + 1); if (error) return "recipe." + error; } if (message.metadata != null && message.hasOwnProperty("metadata")) { - var error = $root.grafeas.v1.Metadata.verify(message.metadata); + var error = $root.grafeas.v1.Metadata.verify(message.metadata, long + 1); if (error) return "metadata." + error; } @@ -5135,24 +5417,28 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.InTotoProvenance} InTotoProvenance */ - InTotoProvenance.fromObject = function fromObject(object) { + InTotoProvenance.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.InTotoProvenance) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.InTotoProvenance(); if (object.builderConfig != null) { if (typeof object.builderConfig !== "object") throw TypeError(".grafeas.v1.InTotoProvenance.builderConfig: object expected"); - message.builderConfig = $root.grafeas.v1.BuilderConfig.fromObject(object.builderConfig); + message.builderConfig = $root.grafeas.v1.BuilderConfig.fromObject(object.builderConfig, long + 1); } if (object.recipe != null) { if (typeof object.recipe !== "object") throw TypeError(".grafeas.v1.InTotoProvenance.recipe: object expected"); - message.recipe = $root.grafeas.v1.Recipe.fromObject(object.recipe); + message.recipe = $root.grafeas.v1.Recipe.fromObject(object.recipe, long + 1); } if (object.metadata != null) { if (typeof object.metadata !== "object") throw TypeError(".grafeas.v1.InTotoProvenance.metadata: object expected"); - message.metadata = $root.grafeas.v1.Metadata.fromObject(object.metadata); + message.metadata = $root.grafeas.v1.Metadata.fromObject(object.metadata, long + 1); } if (object.materials) { if (!Array.isArray(object.materials)) @@ -5253,7 +5539,7 @@ this.subject = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5383,9 +5669,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - InTotoStatement.decode = function decode(reader, length, error) { + InTotoStatement.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.InTotoStatement(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5399,7 +5689,7 @@ case 2: { if (!(message.subject && message.subject.length)) message.subject = []; - message.subject.push($root.grafeas.v1.Subject.decode(reader, reader.uint32())); + message.subject.push($root.grafeas.v1.Subject.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -5407,19 +5697,19 @@ break; } case 4: { - message.provenance = $root.grafeas.v1.InTotoProvenance.decode(reader, reader.uint32()); + message.provenance = $root.grafeas.v1.InTotoProvenance.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.slsaProvenance = $root.grafeas.v1.SlsaProvenance.decode(reader, reader.uint32()); + message.slsaProvenance = $root.grafeas.v1.SlsaProvenance.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.slsaProvenanceZeroTwo = $root.grafeas.v1.SlsaProvenanceZeroTwo.decode(reader, reader.uint32()); + message.slsaProvenanceZeroTwo = $root.grafeas.v1.SlsaProvenanceZeroTwo.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5450,9 +5740,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - InTotoStatement.verify = function verify(message) { + InTotoStatement.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) @@ -5461,7 +5755,7 @@ if (!Array.isArray(message.subject)) return "subject: array expected"; for (var i = 0; i < message.subject.length; ++i) { - var error = $root.grafeas.v1.Subject.verify(message.subject[i]); + var error = $root.grafeas.v1.Subject.verify(message.subject[i], long + 1); if (error) return "subject." + error; } @@ -5472,7 +5766,7 @@ if (message.provenance != null && message.hasOwnProperty("provenance")) { properties.predicate = 1; { - var error = $root.grafeas.v1.InTotoProvenance.verify(message.provenance); + var error = $root.grafeas.v1.InTotoProvenance.verify(message.provenance, long + 1); if (error) return "provenance." + error; } @@ -5482,7 +5776,7 @@ return "predicate: multiple values"; properties.predicate = 1; { - var error = $root.grafeas.v1.SlsaProvenance.verify(message.slsaProvenance); + var error = $root.grafeas.v1.SlsaProvenance.verify(message.slsaProvenance, long + 1); if (error) return "slsaProvenance." + error; } @@ -5492,7 +5786,7 @@ return "predicate: multiple values"; properties.predicate = 1; { - var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.verify(message.slsaProvenanceZeroTwo); + var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.verify(message.slsaProvenanceZeroTwo, long + 1); if (error) return "slsaProvenanceZeroTwo." + error; } @@ -5508,9 +5802,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.InTotoStatement} InTotoStatement */ - InTotoStatement.fromObject = function fromObject(object) { + InTotoStatement.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.InTotoStatement) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.InTotoStatement(); if (object.type != null) message.type = String(object.type); @@ -5521,7 +5819,7 @@ for (var i = 0; i < object.subject.length; ++i) { if (typeof object.subject[i] !== "object") throw TypeError(".grafeas.v1.InTotoStatement.subject: object expected"); - message.subject[i] = $root.grafeas.v1.Subject.fromObject(object.subject[i]); + message.subject[i] = $root.grafeas.v1.Subject.fromObject(object.subject[i], long + 1); } } if (object.predicateType != null) @@ -5529,17 +5827,17 @@ if (object.provenance != null) { if (typeof object.provenance !== "object") throw TypeError(".grafeas.v1.InTotoStatement.provenance: object expected"); - message.provenance = $root.grafeas.v1.InTotoProvenance.fromObject(object.provenance); + message.provenance = $root.grafeas.v1.InTotoProvenance.fromObject(object.provenance, long + 1); } if (object.slsaProvenance != null) { if (typeof object.slsaProvenance !== "object") throw TypeError(".grafeas.v1.InTotoStatement.slsaProvenance: object expected"); - message.slsaProvenance = $root.grafeas.v1.SlsaProvenance.fromObject(object.slsaProvenance); + message.slsaProvenance = $root.grafeas.v1.SlsaProvenance.fromObject(object.slsaProvenance, long + 1); } if (object.slsaProvenanceZeroTwo != null) { if (typeof object.slsaProvenanceZeroTwo !== "object") throw TypeError(".grafeas.v1.InTotoStatement.slsaProvenanceZeroTwo: object expected"); - message.slsaProvenanceZeroTwo = $root.grafeas.v1.SlsaProvenanceZeroTwo.fromObject(object.slsaProvenanceZeroTwo); + message.slsaProvenanceZeroTwo = $root.grafeas.v1.SlsaProvenanceZeroTwo.fromObject(object.slsaProvenanceZeroTwo, long + 1); } return message; }; @@ -5641,7 +5939,7 @@ this.digest = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5717,9 +6015,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Subject.decode = function decode(reader, length, error) { + Subject.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Subject(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -5746,15 +6048,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.digest, key); message.digest[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5785,9 +6089,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Subject.verify = function verify(message) { + Subject.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -5810,9 +6118,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Subject} Subject */ - Subject.fromObject = function fromObject(object) { + Subject.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Subject) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Subject(); if (object.name != null) message.name = String(object.name); @@ -5820,8 +6132,11 @@ if (typeof object.digest !== "object") throw TypeError(".grafeas.v1.Subject.digest: object expected"); message.digest = {}; - for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.digest, keys[i]); message.digest[keys[i]] = String(object.digest[keys[i]]); + } } return message; }; @@ -5848,8 +6163,11 @@ var keys2; if (message.digest && (keys2 = Object.keys(message.digest)).length) { object.digest = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.digest, keys2[j]); object.digest[keys2[j]] = message.digest[keys2[j]]; + } } return object; }; @@ -5907,7 +6225,7 @@ this.subject = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6003,9 +6321,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - InTotoSlsaProvenanceV1.decode = function decode(reader, length, error) { + InTotoSlsaProvenanceV1.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.InTotoSlsaProvenanceV1(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6019,7 +6341,7 @@ case 2: { if (!(message.subject && message.subject.length)) message.subject = []; - message.subject.push($root.grafeas.v1.Subject.decode(reader, reader.uint32())); + message.subject.push($root.grafeas.v1.Subject.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -6027,11 +6349,11 @@ break; } case 4: { - message.predicate = $root.grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1.decode(reader, reader.uint32()); + message.predicate = $root.grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6062,9 +6384,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - InTotoSlsaProvenanceV1.verify = function verify(message) { + InTotoSlsaProvenanceV1.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -6072,7 +6398,7 @@ if (!Array.isArray(message.subject)) return "subject: array expected"; for (var i = 0; i < message.subject.length; ++i) { - var error = $root.grafeas.v1.Subject.verify(message.subject[i]); + var error = $root.grafeas.v1.Subject.verify(message.subject[i], long + 1); if (error) return "subject." + error; } @@ -6081,7 +6407,7 @@ if (!$util.isString(message.predicateType)) return "predicateType: string expected"; if (message.predicate != null && message.hasOwnProperty("predicate")) { - var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1.verify(message.predicate); + var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1.verify(message.predicate, long + 1); if (error) return "predicate." + error; } @@ -6096,9 +6422,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.InTotoSlsaProvenanceV1} InTotoSlsaProvenanceV1 */ - InTotoSlsaProvenanceV1.fromObject = function fromObject(object) { + InTotoSlsaProvenanceV1.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.InTotoSlsaProvenanceV1) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.InTotoSlsaProvenanceV1(); if (object.type != null) message.type = String(object.type); @@ -6109,7 +6439,7 @@ for (var i = 0; i < object.subject.length; ++i) { if (typeof object.subject[i] !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.subject: object expected"); - message.subject[i] = $root.grafeas.v1.Subject.fromObject(object.subject[i]); + message.subject[i] = $root.grafeas.v1.Subject.fromObject(object.subject[i], long + 1); } } if (object.predicateType != null) @@ -6117,7 +6447,7 @@ if (object.predicate != null) { if (typeof object.predicate !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.predicate: object expected"); - message.predicate = $root.grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1.fromObject(object.predicate); + message.predicate = $root.grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1.fromObject(object.predicate, long + 1); } return message; }; @@ -6203,7 +6533,7 @@ function SlsaProvenanceV1(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6278,9 +6608,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaProvenanceV1.decode = function decode(reader, length, error) { + SlsaProvenanceV1.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6288,15 +6622,15 @@ break; switch (tag >>> 3) { case 1: { - message.buildDefinition = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition.decode(reader, reader.uint32()); + message.buildDefinition = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.runDetails = $root.grafeas.v1.InTotoSlsaProvenanceV1.RunDetails.decode(reader, reader.uint32()); + message.runDetails = $root.grafeas.v1.InTotoSlsaProvenanceV1.RunDetails.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6327,16 +6661,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaProvenanceV1.verify = function verify(message) { + SlsaProvenanceV1.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.buildDefinition != null && message.hasOwnProperty("buildDefinition")) { - var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition.verify(message.buildDefinition); + var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition.verify(message.buildDefinition, long + 1); if (error) return "buildDefinition." + error; } if (message.runDetails != null && message.hasOwnProperty("runDetails")) { - var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.RunDetails.verify(message.runDetails); + var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.RunDetails.verify(message.runDetails, long + 1); if (error) return "runDetails." + error; } @@ -6351,19 +6689,23 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1} SlsaProvenanceV1 */ - SlsaProvenanceV1.fromObject = function fromObject(object) { + SlsaProvenanceV1.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1(); if (object.buildDefinition != null) { if (typeof object.buildDefinition !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1.buildDefinition: object expected"); - message.buildDefinition = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition.fromObject(object.buildDefinition); + message.buildDefinition = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition.fromObject(object.buildDefinition, long + 1); } if (object.runDetails != null) { if (typeof object.runDetails !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.SlsaProvenanceV1.runDetails: object expected"); - message.runDetails = $root.grafeas.v1.InTotoSlsaProvenanceV1.RunDetails.fromObject(object.runDetails); + message.runDetails = $root.grafeas.v1.InTotoSlsaProvenanceV1.RunDetails.fromObject(object.runDetails, long + 1); } return message; }; @@ -6445,7 +6787,7 @@ this.resolvedDependencies = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6541,9 +6883,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BuildDefinition.decode = function decode(reader, length, error) { + BuildDefinition.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6555,21 +6901,21 @@ break; } case 2: { - message.externalParameters = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + message.externalParameters = $root.google.protobuf.Struct.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.internalParameters = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + message.internalParameters = $root.google.protobuf.Struct.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.resolvedDependencies && message.resolvedDependencies.length)) message.resolvedDependencies = []; - message.resolvedDependencies.push($root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.decode(reader, reader.uint32())); + message.resolvedDependencies.push($root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6600,19 +6946,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BuildDefinition.verify = function verify(message) { + BuildDefinition.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.buildType != null && message.hasOwnProperty("buildType")) if (!$util.isString(message.buildType)) return "buildType: string expected"; if (message.externalParameters != null && message.hasOwnProperty("externalParameters")) { - var error = $root.google.protobuf.Struct.verify(message.externalParameters); + var error = $root.google.protobuf.Struct.verify(message.externalParameters, long + 1); if (error) return "externalParameters." + error; } if (message.internalParameters != null && message.hasOwnProperty("internalParameters")) { - var error = $root.google.protobuf.Struct.verify(message.internalParameters); + var error = $root.google.protobuf.Struct.verify(message.internalParameters, long + 1); if (error) return "internalParameters." + error; } @@ -6620,7 +6970,7 @@ if (!Array.isArray(message.resolvedDependencies)) return "resolvedDependencies: array expected"; for (var i = 0; i < message.resolvedDependencies.length; ++i) { - var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.verify(message.resolvedDependencies[i]); + var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.verify(message.resolvedDependencies[i], long + 1); if (error) return "resolvedDependencies." + error; } @@ -6636,21 +6986,25 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition} BuildDefinition */ - BuildDefinition.fromObject = function fromObject(object) { + BuildDefinition.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition(); if (object.buildType != null) message.buildType = String(object.buildType); if (object.externalParameters != null) { if (typeof object.externalParameters !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition.externalParameters: object expected"); - message.externalParameters = $root.google.protobuf.Struct.fromObject(object.externalParameters); + message.externalParameters = $root.google.protobuf.Struct.fromObject(object.externalParameters, long + 1); } if (object.internalParameters != null) { if (typeof object.internalParameters !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition.internalParameters: object expected"); - message.internalParameters = $root.google.protobuf.Struct.fromObject(object.internalParameters); + message.internalParameters = $root.google.protobuf.Struct.fromObject(object.internalParameters, long + 1); } if (object.resolvedDependencies) { if (!Array.isArray(object.resolvedDependencies)) @@ -6659,7 +7013,7 @@ for (var i = 0; i < object.resolvedDependencies.length; ++i) { if (typeof object.resolvedDependencies[i] !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.BuildDefinition.resolvedDependencies: object expected"); - message.resolvedDependencies[i] = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.fromObject(object.resolvedDependencies[i]); + message.resolvedDependencies[i] = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.fromObject(object.resolvedDependencies[i], long + 1); } } return message; @@ -6756,7 +7110,7 @@ this.annotations = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6885,9 +7239,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decode = function decode(reader, length, error) { + ResourceDescriptor.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -6918,10 +7276,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.digest, key); message.digest[key] = value; break; } @@ -6950,18 +7310,20 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.annotations, key); message.annotations[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6992,9 +7354,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceDescriptor.verify = function verify(message) { + ResourceDescriptor.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -7023,7 +7389,7 @@ return "annotations: object expected"; var key = Object.keys(message.annotations); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.annotations[key[i]]); + var error = $root.google.protobuf.Value.verify(message.annotations[key[i]], long + 1); if (error) return "annotations." + error; } @@ -7039,9 +7405,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor} ResourceDescriptor */ - ResourceDescriptor.fromObject = function fromObject(object) { + ResourceDescriptor.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor(); if (object.name != null) message.name = String(object.name); @@ -7051,8 +7421,11 @@ if (typeof object.digest !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.digest: object expected"); message.digest = {}; - for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.digest, keys[i]); message.digest[keys[i]] = String(object.digest[keys[i]]); + } } if (object.content != null) if (typeof object.content === "string") @@ -7068,9 +7441,11 @@ throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.annotations: object expected"); message.annotations = {}; for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.annotations, keys[i]); if (typeof object.annotations[keys[i]] !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.annotations: object expected"); - message.annotations[keys[i]] = $root.google.protobuf.Value.fromObject(object.annotations[keys[i]]); + message.annotations[keys[i]] = $root.google.protobuf.Value.fromObject(object.annotations[keys[i]], long + 1); } } return message; @@ -7113,8 +7488,11 @@ var keys2; if (message.digest && (keys2 = Object.keys(message.digest)).length) { object.digest = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.digest, keys2[j]); object.digest[keys2[j]] = message.digest[keys2[j]]; + } } if (message.content != null && message.hasOwnProperty("content")) object.content = options.bytes === String ? $util.base64.encode(message.content, 0, message.content.length) : options.bytes === Array ? Array.prototype.slice.call(message.content) : message.content; @@ -7124,8 +7502,11 @@ object.mediaType = message.mediaType; if (message.annotations && (keys2 = Object.keys(message.annotations)).length) { object.annotations = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.annotations, keys2[j]); object.annotations[keys2[j]] = $root.google.protobuf.Value.toObject(message.annotations[keys2[j]], options); + } } return object; }; @@ -7182,7 +7563,7 @@ this.byproducts = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7268,9 +7649,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RunDetails.decode = function decode(reader, length, error) { + RunDetails.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.RunDetails(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7278,21 +7663,21 @@ break; switch (tag >>> 3) { case 1: { - message.builder = $root.grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder.decode(reader, reader.uint32()); + message.builder = $root.grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.metadata = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata.decode(reader, reader.uint32()); + message.metadata = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { if (!(message.byproducts && message.byproducts.length)) message.byproducts = []; - message.byproducts.push($root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.decode(reader, reader.uint32())); + message.byproducts.push($root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7323,16 +7708,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RunDetails.verify = function verify(message) { + RunDetails.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.builder != null && message.hasOwnProperty("builder")) { - var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder.verify(message.builder); + var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder.verify(message.builder, long + 1); if (error) return "builder." + error; } if (message.metadata != null && message.hasOwnProperty("metadata")) { - var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata.verify(message.metadata); + var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata.verify(message.metadata, long + 1); if (error) return "metadata." + error; } @@ -7340,7 +7729,7 @@ if (!Array.isArray(message.byproducts)) return "byproducts: array expected"; for (var i = 0; i < message.byproducts.length; ++i) { - var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.verify(message.byproducts[i]); + var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.verify(message.byproducts[i], long + 1); if (error) return "byproducts." + error; } @@ -7356,19 +7745,23 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.InTotoSlsaProvenanceV1.RunDetails} RunDetails */ - RunDetails.fromObject = function fromObject(object) { + RunDetails.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.InTotoSlsaProvenanceV1.RunDetails) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.RunDetails(); if (object.builder != null) { if (typeof object.builder !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.RunDetails.builder: object expected"); - message.builder = $root.grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder.fromObject(object.builder); + message.builder = $root.grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder.fromObject(object.builder, long + 1); } if (object.metadata != null) { if (typeof object.metadata !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.RunDetails.metadata: object expected"); - message.metadata = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata.fromObject(object.metadata); + message.metadata = $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata.fromObject(object.metadata, long + 1); } if (object.byproducts) { if (!Array.isArray(object.byproducts)) @@ -7377,7 +7770,7 @@ for (var i = 0; i < object.byproducts.length; ++i) { if (typeof object.byproducts[i] !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.RunDetails.byproducts: object expected"); - message.byproducts[i] = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.fromObject(object.byproducts[i]); + message.byproducts[i] = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.fromObject(object.byproducts[i], long + 1); } } return message; @@ -7467,7 +7860,7 @@ this.builderDependencies = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7554,9 +7947,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProvenanceBuilder.decode = function decode(reader, length, error) { + ProvenanceBuilder.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -7583,21 +7980,23 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.version, key); message.version[key] = value; break; } case 3: { if (!(message.builderDependencies && message.builderDependencies.length)) message.builderDependencies = []; - message.builderDependencies.push($root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.decode(reader, reader.uint32())); + message.builderDependencies.push($root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7628,9 +8027,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProvenanceBuilder.verify = function verify(message) { + ProvenanceBuilder.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -7646,7 +8049,7 @@ if (!Array.isArray(message.builderDependencies)) return "builderDependencies: array expected"; for (var i = 0; i < message.builderDependencies.length; ++i) { - var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.verify(message.builderDependencies[i]); + var error = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.verify(message.builderDependencies[i], long + 1); if (error) return "builderDependencies." + error; } @@ -7662,9 +8065,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder} ProvenanceBuilder */ - ProvenanceBuilder.fromObject = function fromObject(object) { + ProvenanceBuilder.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder(); if (object.id != null) message.id = String(object.id); @@ -7672,8 +8079,11 @@ if (typeof object.version !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder.version: object expected"); message.version = {}; - for (var keys = Object.keys(object.version), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.version), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.version, keys[i]); message.version[keys[i]] = String(object.version[keys[i]]); + } } if (object.builderDependencies) { if (!Array.isArray(object.builderDependencies)) @@ -7682,7 +8092,7 @@ for (var i = 0; i < object.builderDependencies.length; ++i) { if (typeof object.builderDependencies[i] !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.ProvenanceBuilder.builderDependencies: object expected"); - message.builderDependencies[i] = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.fromObject(object.builderDependencies[i]); + message.builderDependencies[i] = $root.grafeas.v1.InTotoSlsaProvenanceV1.ResourceDescriptor.fromObject(object.builderDependencies[i], long + 1); } } return message; @@ -7712,8 +8122,11 @@ var keys2; if (message.version && (keys2 = Object.keys(message.version)).length) { object.version = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.version, keys2[j]); object.version[keys2[j]] = message.version[keys2[j]]; + } } if (message.builderDependencies && message.builderDependencies.length) { object.builderDependencies = []; @@ -7774,7 +8187,7 @@ function BuildMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7859,9 +8272,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BuildMetadata.decode = function decode(reader, length, error) { + BuildMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7873,15 +8290,15 @@ break; } case 2: { - message.startedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.finishedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.finishedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7912,19 +8329,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BuildMetadata.verify = function verify(message) { + BuildMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.invocationId != null && message.hasOwnProperty("invocationId")) if (!$util.isString(message.invocationId)) return "invocationId: string expected"; if (message.startedOn != null && message.hasOwnProperty("startedOn")) { - var error = $root.google.protobuf.Timestamp.verify(message.startedOn); + var error = $root.google.protobuf.Timestamp.verify(message.startedOn, long + 1); if (error) return "startedOn." + error; } if (message.finishedOn != null && message.hasOwnProperty("finishedOn")) { - var error = $root.google.protobuf.Timestamp.verify(message.finishedOn); + var error = $root.google.protobuf.Timestamp.verify(message.finishedOn, long + 1); if (error) return "finishedOn." + error; } @@ -7939,21 +8360,25 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata} BuildMetadata */ - BuildMetadata.fromObject = function fromObject(object) { + BuildMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata(); if (object.invocationId != null) message.invocationId = String(object.invocationId); if (object.startedOn != null) { if (typeof object.startedOn !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata.startedOn: object expected"); - message.startedOn = $root.google.protobuf.Timestamp.fromObject(object.startedOn); + message.startedOn = $root.google.protobuf.Timestamp.fromObject(object.startedOn, long + 1); } if (object.finishedOn != null) { if (typeof object.finishedOn !== "object") throw TypeError(".grafeas.v1.InTotoSlsaProvenanceV1.BuildMetadata.finishedOn: object expected"); - message.finishedOn = $root.google.protobuf.Timestamp.fromObject(object.finishedOn); + message.finishedOn = $root.google.protobuf.Timestamp.fromObject(object.finishedOn, long + 1); } return message; }; @@ -8041,7 +8466,7 @@ this.materials = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8137,9 +8562,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaProvenance.decode = function decode(reader, length, error) { + SlsaProvenance.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenance(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8147,25 +8576,25 @@ break; switch (tag >>> 3) { case 1: { - message.builder = $root.grafeas.v1.SlsaProvenance.SlsaBuilder.decode(reader, reader.uint32()); + message.builder = $root.grafeas.v1.SlsaProvenance.SlsaBuilder.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.recipe = $root.grafeas.v1.SlsaProvenance.SlsaRecipe.decode(reader, reader.uint32()); + message.recipe = $root.grafeas.v1.SlsaProvenance.SlsaRecipe.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.metadata = $root.grafeas.v1.SlsaProvenance.SlsaMetadata.decode(reader, reader.uint32()); + message.metadata = $root.grafeas.v1.SlsaProvenance.SlsaMetadata.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.materials && message.materials.length)) message.materials = []; - message.materials.push($root.grafeas.v1.SlsaProvenance.Material.decode(reader, reader.uint32())); + message.materials.push($root.grafeas.v1.SlsaProvenance.Material.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8196,21 +8625,25 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaProvenance.verify = function verify(message) { + SlsaProvenance.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.builder != null && message.hasOwnProperty("builder")) { - var error = $root.grafeas.v1.SlsaProvenance.SlsaBuilder.verify(message.builder); + var error = $root.grafeas.v1.SlsaProvenance.SlsaBuilder.verify(message.builder, long + 1); if (error) return "builder." + error; } if (message.recipe != null && message.hasOwnProperty("recipe")) { - var error = $root.grafeas.v1.SlsaProvenance.SlsaRecipe.verify(message.recipe); + var error = $root.grafeas.v1.SlsaProvenance.SlsaRecipe.verify(message.recipe, long + 1); if (error) return "recipe." + error; } if (message.metadata != null && message.hasOwnProperty("metadata")) { - var error = $root.grafeas.v1.SlsaProvenance.SlsaMetadata.verify(message.metadata); + var error = $root.grafeas.v1.SlsaProvenance.SlsaMetadata.verify(message.metadata, long + 1); if (error) return "metadata." + error; } @@ -8218,7 +8651,7 @@ if (!Array.isArray(message.materials)) return "materials: array expected"; for (var i = 0; i < message.materials.length; ++i) { - var error = $root.grafeas.v1.SlsaProvenance.Material.verify(message.materials[i]); + var error = $root.grafeas.v1.SlsaProvenance.Material.verify(message.materials[i], long + 1); if (error) return "materials." + error; } @@ -8234,24 +8667,28 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenance} SlsaProvenance */ - SlsaProvenance.fromObject = function fromObject(object) { + SlsaProvenance.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenance) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenance(); if (object.builder != null) { if (typeof object.builder !== "object") throw TypeError(".grafeas.v1.SlsaProvenance.builder: object expected"); - message.builder = $root.grafeas.v1.SlsaProvenance.SlsaBuilder.fromObject(object.builder); + message.builder = $root.grafeas.v1.SlsaProvenance.SlsaBuilder.fromObject(object.builder, long + 1); } if (object.recipe != null) { if (typeof object.recipe !== "object") throw TypeError(".grafeas.v1.SlsaProvenance.recipe: object expected"); - message.recipe = $root.grafeas.v1.SlsaProvenance.SlsaRecipe.fromObject(object.recipe); + message.recipe = $root.grafeas.v1.SlsaProvenance.SlsaRecipe.fromObject(object.recipe, long + 1); } if (object.metadata != null) { if (typeof object.metadata !== "object") throw TypeError(".grafeas.v1.SlsaProvenance.metadata: object expected"); - message.metadata = $root.grafeas.v1.SlsaProvenance.SlsaMetadata.fromObject(object.metadata); + message.metadata = $root.grafeas.v1.SlsaProvenance.SlsaMetadata.fromObject(object.metadata, long + 1); } if (object.materials) { if (!Array.isArray(object.materials)) @@ -8260,7 +8697,7 @@ for (var i = 0; i < object.materials.length; ++i) { if (typeof object.materials[i] !== "object") throw TypeError(".grafeas.v1.SlsaProvenance.materials: object expected"); - message.materials[i] = $root.grafeas.v1.SlsaProvenance.Material.fromObject(object.materials[i]); + message.materials[i] = $root.grafeas.v1.SlsaProvenance.Material.fromObject(object.materials[i], long + 1); } } return message; @@ -8350,7 +8787,7 @@ function SlsaRecipe(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8455,9 +8892,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaRecipe.decode = function decode(reader, length, error) { + SlsaRecipe.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenance.SlsaRecipe(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8477,15 +8918,15 @@ break; } case 4: { - message["arguments"] = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message["arguments"] = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.environment = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.environment = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8516,9 +8957,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaRecipe.verify = function verify(message) { + SlsaRecipe.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -8529,12 +8974,12 @@ if (!$util.isString(message.entryPoint)) return "entryPoint: string expected"; if (message["arguments"] != null && message.hasOwnProperty("arguments")) { - var error = $root.google.protobuf.Any.verify(message["arguments"]); + var error = $root.google.protobuf.Any.verify(message["arguments"], long + 1); if (error) return "arguments." + error; } if (message.environment != null && message.hasOwnProperty("environment")) { - var error = $root.google.protobuf.Any.verify(message.environment); + var error = $root.google.protobuf.Any.verify(message.environment, long + 1); if (error) return "environment." + error; } @@ -8549,9 +8994,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenance.SlsaRecipe} SlsaRecipe */ - SlsaRecipe.fromObject = function fromObject(object) { + SlsaRecipe.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenance.SlsaRecipe) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenance.SlsaRecipe(); if (object.type != null) message.type = String(object.type); @@ -8569,12 +9018,12 @@ if (object["arguments"] != null) { if (typeof object["arguments"] !== "object") throw TypeError(".grafeas.v1.SlsaProvenance.SlsaRecipe.arguments: object expected"); - message["arguments"] = $root.google.protobuf.Any.fromObject(object["arguments"]); + message["arguments"] = $root.google.protobuf.Any.fromObject(object["arguments"], long + 1); } if (object.environment != null) { if (typeof object.environment !== "object") throw TypeError(".grafeas.v1.SlsaProvenance.SlsaRecipe.environment: object expected"); - message.environment = $root.google.protobuf.Any.fromObject(object.environment); + message.environment = $root.google.protobuf.Any.fromObject(object.environment, long + 1); } return message; }; @@ -8670,7 +9119,7 @@ function SlsaCompleteness(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8755,9 +9204,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaCompleteness.decode = function decode(reader, length, error) { + SlsaCompleteness.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenance.SlsaCompleteness(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8777,7 +9230,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8808,9 +9261,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaCompleteness.verify = function verify(message) { + SlsaCompleteness.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message["arguments"] != null && message.hasOwnProperty("arguments")) if (typeof message["arguments"] !== "boolean") return "arguments: boolean expected"; @@ -8831,9 +9288,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenance.SlsaCompleteness} SlsaCompleteness */ - SlsaCompleteness.fromObject = function fromObject(object) { + SlsaCompleteness.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenance.SlsaCompleteness) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenance.SlsaCompleteness(); if (object["arguments"] != null) message["arguments"] = Boolean(object["arguments"]); @@ -8924,7 +9385,7 @@ function SlsaMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9029,9 +9490,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaMetadata.decode = function decode(reader, length, error) { + SlsaMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenance.SlsaMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9043,15 +9508,15 @@ break; } case 2: { - message.buildStartedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.buildStartedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.buildFinishedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.buildFinishedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.completeness = $root.grafeas.v1.SlsaProvenance.SlsaCompleteness.decode(reader, reader.uint32()); + message.completeness = $root.grafeas.v1.SlsaProvenance.SlsaCompleteness.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -9059,7 +9524,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9090,24 +9555,28 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaMetadata.verify = function verify(message) { + SlsaMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.buildInvocationId != null && message.hasOwnProperty("buildInvocationId")) if (!$util.isString(message.buildInvocationId)) return "buildInvocationId: string expected"; if (message.buildStartedOn != null && message.hasOwnProperty("buildStartedOn")) { - var error = $root.google.protobuf.Timestamp.verify(message.buildStartedOn); + var error = $root.google.protobuf.Timestamp.verify(message.buildStartedOn, long + 1); if (error) return "buildStartedOn." + error; } if (message.buildFinishedOn != null && message.hasOwnProperty("buildFinishedOn")) { - var error = $root.google.protobuf.Timestamp.verify(message.buildFinishedOn); + var error = $root.google.protobuf.Timestamp.verify(message.buildFinishedOn, long + 1); if (error) return "buildFinishedOn." + error; } if (message.completeness != null && message.hasOwnProperty("completeness")) { - var error = $root.grafeas.v1.SlsaProvenance.SlsaCompleteness.verify(message.completeness); + var error = $root.grafeas.v1.SlsaProvenance.SlsaCompleteness.verify(message.completeness, long + 1); if (error) return "completeness." + error; } @@ -9125,26 +9594,30 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenance.SlsaMetadata} SlsaMetadata */ - SlsaMetadata.fromObject = function fromObject(object) { + SlsaMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenance.SlsaMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenance.SlsaMetadata(); if (object.buildInvocationId != null) message.buildInvocationId = String(object.buildInvocationId); if (object.buildStartedOn != null) { if (typeof object.buildStartedOn !== "object") throw TypeError(".grafeas.v1.SlsaProvenance.SlsaMetadata.buildStartedOn: object expected"); - message.buildStartedOn = $root.google.protobuf.Timestamp.fromObject(object.buildStartedOn); + message.buildStartedOn = $root.google.protobuf.Timestamp.fromObject(object.buildStartedOn, long + 1); } if (object.buildFinishedOn != null) { if (typeof object.buildFinishedOn !== "object") throw TypeError(".grafeas.v1.SlsaProvenance.SlsaMetadata.buildFinishedOn: object expected"); - message.buildFinishedOn = $root.google.protobuf.Timestamp.fromObject(object.buildFinishedOn); + message.buildFinishedOn = $root.google.protobuf.Timestamp.fromObject(object.buildFinishedOn, long + 1); } if (object.completeness != null) { if (typeof object.completeness !== "object") throw TypeError(".grafeas.v1.SlsaProvenance.SlsaMetadata.completeness: object expected"); - message.completeness = $root.grafeas.v1.SlsaProvenance.SlsaCompleteness.fromObject(object.completeness); + message.completeness = $root.grafeas.v1.SlsaProvenance.SlsaCompleteness.fromObject(object.completeness, long + 1); } if (object.reproducible != null) message.reproducible = Boolean(object.reproducible); @@ -9233,7 +9706,7 @@ function SlsaBuilder(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9298,9 +9771,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaBuilder.decode = function decode(reader, length, error) { + SlsaBuilder.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenance.SlsaBuilder(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9312,7 +9789,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9343,9 +9820,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaBuilder.verify = function verify(message) { + SlsaBuilder.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -9360,9 +9841,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenance.SlsaBuilder} SlsaBuilder */ - SlsaBuilder.fromObject = function fromObject(object) { + SlsaBuilder.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenance.SlsaBuilder) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenance.SlsaBuilder(); if (object.id != null) message.id = String(object.id); @@ -9440,7 +9925,7 @@ this.digest = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9516,9 +10001,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Material.decode = function decode(reader, length, error) { + Material.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenance.Material(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -9545,15 +10034,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.digest, key); message.digest[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9584,9 +10075,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Material.verify = function verify(message) { + Material.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uri != null && message.hasOwnProperty("uri")) if (!$util.isString(message.uri)) return "uri: string expected"; @@ -9609,9 +10104,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenance.Material} Material */ - Material.fromObject = function fromObject(object) { + Material.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenance.Material) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenance.Material(); if (object.uri != null) message.uri = String(object.uri); @@ -9619,8 +10118,11 @@ if (typeof object.digest !== "object") throw TypeError(".grafeas.v1.SlsaProvenance.Material.digest: object expected"); message.digest = {}; - for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.digest, keys[i]); message.digest[keys[i]] = String(object.digest[keys[i]]); + } } return message; }; @@ -9647,8 +10149,11 @@ var keys2; if (message.digest && (keys2 = Object.keys(message.digest)).length) { object.digest = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.digest, keys2[j]); object.digest[keys2[j]] = message.digest[keys2[j]]; + } } return object; }; @@ -9711,7 +10216,7 @@ this.materials = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9827,9 +10332,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaProvenanceZeroTwo.decode = function decode(reader, length, error) { + SlsaProvenanceZeroTwo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenanceZeroTwo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9837,7 +10346,7 @@ break; switch (tag >>> 3) { case 1: { - message.builder = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.decode(reader, reader.uint32()); + message.builder = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -9845,25 +10354,25 @@ break; } case 3: { - message.invocation = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.decode(reader, reader.uint32()); + message.invocation = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.buildConfig = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + message.buildConfig = $root.google.protobuf.Struct.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.metadata = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.decode(reader, reader.uint32()); + message.metadata = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { if (!(message.materials && message.materials.length)) message.materials = []; - message.materials.push($root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.decode(reader, reader.uint32())); + message.materials.push($root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9894,11 +10403,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaProvenanceZeroTwo.verify = function verify(message) { + SlsaProvenanceZeroTwo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.builder != null && message.hasOwnProperty("builder")) { - var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.verify(message.builder); + var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.verify(message.builder, long + 1); if (error) return "builder." + error; } @@ -9906,17 +10419,17 @@ if (!$util.isString(message.buildType)) return "buildType: string expected"; if (message.invocation != null && message.hasOwnProperty("invocation")) { - var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.verify(message.invocation); + var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.verify(message.invocation, long + 1); if (error) return "invocation." + error; } if (message.buildConfig != null && message.hasOwnProperty("buildConfig")) { - var error = $root.google.protobuf.Struct.verify(message.buildConfig); + var error = $root.google.protobuf.Struct.verify(message.buildConfig, long + 1); if (error) return "buildConfig." + error; } if (message.metadata != null && message.hasOwnProperty("metadata")) { - var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.verify(message.metadata); + var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.verify(message.metadata, long + 1); if (error) return "metadata." + error; } @@ -9924,7 +10437,7 @@ if (!Array.isArray(message.materials)) return "materials: array expected"; for (var i = 0; i < message.materials.length; ++i) { - var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.verify(message.materials[i]); + var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.verify(message.materials[i], long + 1); if (error) return "materials." + error; } @@ -9940,31 +10453,35 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenanceZeroTwo} SlsaProvenanceZeroTwo */ - SlsaProvenanceZeroTwo.fromObject = function fromObject(object) { + SlsaProvenanceZeroTwo.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo(); if (object.builder != null) { if (typeof object.builder !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.builder: object expected"); - message.builder = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.fromObject(object.builder); + message.builder = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.fromObject(object.builder, long + 1); } if (object.buildType != null) message.buildType = String(object.buildType); if (object.invocation != null) { if (typeof object.invocation !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.invocation: object expected"); - message.invocation = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.fromObject(object.invocation); + message.invocation = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.fromObject(object.invocation, long + 1); } if (object.buildConfig != null) { if (typeof object.buildConfig !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.buildConfig: object expected"); - message.buildConfig = $root.google.protobuf.Struct.fromObject(object.buildConfig); + message.buildConfig = $root.google.protobuf.Struct.fromObject(object.buildConfig, long + 1); } if (object.metadata != null) { if (typeof object.metadata !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.metadata: object expected"); - message.metadata = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.fromObject(object.metadata); + message.metadata = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.fromObject(object.metadata, long + 1); } if (object.materials) { if (!Array.isArray(object.materials)) @@ -9973,7 +10490,7 @@ for (var i = 0; i < object.materials.length; ++i) { if (typeof object.materials[i] !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.materials: object expected"); - message.materials[i] = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.fromObject(object.materials[i]); + message.materials[i] = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.fromObject(object.materials[i], long + 1); } } return message; @@ -10065,7 +10582,7 @@ function SlsaBuilder(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10130,9 +10647,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaBuilder.decode = function decode(reader, length, error) { + SlsaBuilder.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10144,7 +10665,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10175,9 +10696,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaBuilder.verify = function verify(message) { + SlsaBuilder.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -10192,9 +10717,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder} SlsaBuilder */ - SlsaBuilder.fromObject = function fromObject(object) { + SlsaBuilder.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder(); if (object.id != null) message.id = String(object.id); @@ -10272,7 +10801,7 @@ this.digest = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10348,9 +10877,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaMaterial.decode = function decode(reader, length, error) { + SlsaMaterial.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -10377,15 +10910,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.digest, key); message.digest[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10416,9 +10951,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaMaterial.verify = function verify(message) { + SlsaMaterial.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uri != null && message.hasOwnProperty("uri")) if (!$util.isString(message.uri)) return "uri: string expected"; @@ -10441,9 +10980,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial} SlsaMaterial */ - SlsaMaterial.fromObject = function fromObject(object) { + SlsaMaterial.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial(); if (object.uri != null) message.uri = String(object.uri); @@ -10451,8 +10994,11 @@ if (typeof object.digest !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.digest: object expected"); message.digest = {}; - for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.digest, keys[i]); message.digest[keys[i]] = String(object.digest[keys[i]]); + } } return message; }; @@ -10479,8 +11025,11 @@ var keys2; if (message.digest && (keys2 = Object.keys(message.digest)).length) { object.digest = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.digest, keys2[j]); object.digest[keys2[j]] = message.digest[keys2[j]]; + } } return object; }; @@ -10536,7 +11085,7 @@ function SlsaInvocation(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10621,9 +11170,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaInvocation.decode = function decode(reader, length, error) { + SlsaInvocation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10631,19 +11184,19 @@ break; switch (tag >>> 3) { case 1: { - message.configSource = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.decode(reader, reader.uint32()); + message.configSource = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.parameters = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + message.parameters = $root.google.protobuf.Struct.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.environment = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + message.environment = $root.google.protobuf.Struct.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10674,21 +11227,25 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaInvocation.verify = function verify(message) { + SlsaInvocation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.configSource != null && message.hasOwnProperty("configSource")) { - var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.verify(message.configSource); + var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.verify(message.configSource, long + 1); if (error) return "configSource." + error; } if (message.parameters != null && message.hasOwnProperty("parameters")) { - var error = $root.google.protobuf.Struct.verify(message.parameters); + var error = $root.google.protobuf.Struct.verify(message.parameters, long + 1); if (error) return "parameters." + error; } if (message.environment != null && message.hasOwnProperty("environment")) { - var error = $root.google.protobuf.Struct.verify(message.environment); + var error = $root.google.protobuf.Struct.verify(message.environment, long + 1); if (error) return "environment." + error; } @@ -10703,24 +11260,28 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation} SlsaInvocation */ - SlsaInvocation.fromObject = function fromObject(object) { + SlsaInvocation.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation(); if (object.configSource != null) { if (typeof object.configSource !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.configSource: object expected"); - message.configSource = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.fromObject(object.configSource); + message.configSource = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.fromObject(object.configSource, long + 1); } if (object.parameters != null) { if (typeof object.parameters !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.parameters: object expected"); - message.parameters = $root.google.protobuf.Struct.fromObject(object.parameters); + message.parameters = $root.google.protobuf.Struct.fromObject(object.parameters, long + 1); } if (object.environment != null) { if (typeof object.environment !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.environment: object expected"); - message.environment = $root.google.protobuf.Struct.fromObject(object.environment); + message.environment = $root.google.protobuf.Struct.fromObject(object.environment, long + 1); } return message; }; @@ -10804,7 +11365,7 @@ this.digest = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10890,9 +11451,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaConfigSource.decode = function decode(reader, length, error) { + SlsaConfigSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -10919,10 +11484,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.digest, key); message.digest[key] = value; break; } @@ -10931,7 +11498,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10962,9 +11529,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaConfigSource.verify = function verify(message) { + SlsaConfigSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uri != null && message.hasOwnProperty("uri")) if (!$util.isString(message.uri)) return "uri: string expected"; @@ -10990,9 +11561,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource} SlsaConfigSource */ - SlsaConfigSource.fromObject = function fromObject(object) { + SlsaConfigSource.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource(); if (object.uri != null) message.uri = String(object.uri); @@ -11000,8 +11575,11 @@ if (typeof object.digest !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.digest: object expected"); message.digest = {}; - for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.digest, keys[i]); message.digest[keys[i]] = String(object.digest[keys[i]]); + } } if (object.entryPoint != null) message.entryPoint = String(object.entryPoint); @@ -11032,8 +11610,11 @@ var keys2; if (message.digest && (keys2 = Object.keys(message.digest)).length) { object.digest = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.digest, keys2[j]); object.digest[keys2[j]] = message.digest[keys2[j]]; + } } if (message.entryPoint != null && message.hasOwnProperty("entryPoint")) object.entryPoint = message.entryPoint; @@ -11093,7 +11674,7 @@ function SlsaMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11198,9 +11779,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaMetadata.decode = function decode(reader, length, error) { + SlsaMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11212,15 +11797,15 @@ break; } case 2: { - message.buildStartedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.buildStartedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.buildFinishedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.buildFinishedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.completeness = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.decode(reader, reader.uint32()); + message.completeness = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -11228,7 +11813,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11259,24 +11844,28 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaMetadata.verify = function verify(message) { + SlsaMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.buildInvocationId != null && message.hasOwnProperty("buildInvocationId")) if (!$util.isString(message.buildInvocationId)) return "buildInvocationId: string expected"; if (message.buildStartedOn != null && message.hasOwnProperty("buildStartedOn")) { - var error = $root.google.protobuf.Timestamp.verify(message.buildStartedOn); + var error = $root.google.protobuf.Timestamp.verify(message.buildStartedOn, long + 1); if (error) return "buildStartedOn." + error; } if (message.buildFinishedOn != null && message.hasOwnProperty("buildFinishedOn")) { - var error = $root.google.protobuf.Timestamp.verify(message.buildFinishedOn); + var error = $root.google.protobuf.Timestamp.verify(message.buildFinishedOn, long + 1); if (error) return "buildFinishedOn." + error; } if (message.completeness != null && message.hasOwnProperty("completeness")) { - var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.verify(message.completeness); + var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.verify(message.completeness, long + 1); if (error) return "completeness." + error; } @@ -11294,26 +11883,30 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata} SlsaMetadata */ - SlsaMetadata.fromObject = function fromObject(object) { + SlsaMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata(); if (object.buildInvocationId != null) message.buildInvocationId = String(object.buildInvocationId); if (object.buildStartedOn != null) { if (typeof object.buildStartedOn !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.buildStartedOn: object expected"); - message.buildStartedOn = $root.google.protobuf.Timestamp.fromObject(object.buildStartedOn); + message.buildStartedOn = $root.google.protobuf.Timestamp.fromObject(object.buildStartedOn, long + 1); } if (object.buildFinishedOn != null) { if (typeof object.buildFinishedOn !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.buildFinishedOn: object expected"); - message.buildFinishedOn = $root.google.protobuf.Timestamp.fromObject(object.buildFinishedOn); + message.buildFinishedOn = $root.google.protobuf.Timestamp.fromObject(object.buildFinishedOn, long + 1); } if (object.completeness != null) { if (typeof object.completeness !== "object") throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.completeness: object expected"); - message.completeness = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.fromObject(object.completeness); + message.completeness = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.fromObject(object.completeness, long + 1); } if (object.reproducible != null) message.reproducible = Boolean(object.reproducible); @@ -11404,7 +11997,7 @@ function SlsaCompleteness(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11489,9 +12082,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SlsaCompleteness.decode = function decode(reader, length, error) { + SlsaCompleteness.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11511,7 +12108,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11542,9 +12139,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SlsaCompleteness.verify = function verify(message) { + SlsaCompleteness.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parameters != null && message.hasOwnProperty("parameters")) if (typeof message.parameters !== "boolean") return "parameters: boolean expected"; @@ -11565,9 +12166,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness} SlsaCompleteness */ - SlsaCompleteness.fromObject = function fromObject(object) { + SlsaCompleteness.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness(); if (object.parameters != null) message.parameters = Boolean(object.parameters); @@ -11672,7 +12277,7 @@ this.buildOptions = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11860,9 +12465,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BuildProvenance.decode = function decode(reader, length, error) { + BuildProvenance.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.BuildProvenance(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -11880,25 +12489,25 @@ case 3: { if (!(message.commands && message.commands.length)) message.commands = []; - message.commands.push($root.grafeas.v1.Command.decode(reader, reader.uint32())); + message.commands.push($root.grafeas.v1.Command.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { if (!(message.builtArtifacts && message.builtArtifacts.length)) message.builtArtifacts = []; - message.builtArtifacts.push($root.grafeas.v1.Artifact.decode(reader, reader.uint32())); + message.builtArtifacts.push($root.grafeas.v1.Artifact.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { @@ -11910,7 +12519,7 @@ break; } case 10: { - message.sourceProvenance = $root.grafeas.v1.Source.decode(reader, reader.uint32()); + message.sourceProvenance = $root.grafeas.v1.Source.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { @@ -11933,10 +12542,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.buildOptions, key); message.buildOptions[key] = value; break; } @@ -11945,7 +12556,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11976,9 +12587,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BuildProvenance.verify = function verify(message) { + BuildProvenance.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -11989,7 +12604,7 @@ if (!Array.isArray(message.commands)) return "commands: array expected"; for (var i = 0; i < message.commands.length; ++i) { - var error = $root.grafeas.v1.Command.verify(message.commands[i]); + var error = $root.grafeas.v1.Command.verify(message.commands[i], long + 1); if (error) return "commands." + error; } @@ -11998,23 +12613,23 @@ if (!Array.isArray(message.builtArtifacts)) return "builtArtifacts: array expected"; for (var i = 0; i < message.builtArtifacts.length; ++i) { - var error = $root.grafeas.v1.Artifact.verify(message.builtArtifacts[i]); + var error = $root.grafeas.v1.Artifact.verify(message.builtArtifacts[i], long + 1); if (error) return "builtArtifacts." + error; } } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -12025,7 +12640,7 @@ if (!$util.isString(message.logsUri)) return "logsUri: string expected"; if (message.sourceProvenance != null && message.hasOwnProperty("sourceProvenance")) { - var error = $root.grafeas.v1.Source.verify(message.sourceProvenance); + var error = $root.grafeas.v1.Source.verify(message.sourceProvenance, long + 1); if (error) return "sourceProvenance." + error; } @@ -12054,9 +12669,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.BuildProvenance} BuildProvenance */ - BuildProvenance.fromObject = function fromObject(object) { + BuildProvenance.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.BuildProvenance) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.BuildProvenance(); if (object.id != null) message.id = String(object.id); @@ -12069,7 +12688,7 @@ for (var i = 0; i < object.commands.length; ++i) { if (typeof object.commands[i] !== "object") throw TypeError(".grafeas.v1.BuildProvenance.commands: object expected"); - message.commands[i] = $root.grafeas.v1.Command.fromObject(object.commands[i]); + message.commands[i] = $root.grafeas.v1.Command.fromObject(object.commands[i], long + 1); } } if (object.builtArtifacts) { @@ -12079,23 +12698,23 @@ for (var i = 0; i < object.builtArtifacts.length; ++i) { if (typeof object.builtArtifacts[i] !== "object") throw TypeError(".grafeas.v1.BuildProvenance.builtArtifacts: object expected"); - message.builtArtifacts[i] = $root.grafeas.v1.Artifact.fromObject(object.builtArtifacts[i]); + message.builtArtifacts[i] = $root.grafeas.v1.Artifact.fromObject(object.builtArtifacts[i], long + 1); } } if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".grafeas.v1.BuildProvenance.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".grafeas.v1.BuildProvenance.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".grafeas.v1.BuildProvenance.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } if (object.creator != null) message.creator = String(object.creator); @@ -12104,7 +12723,7 @@ if (object.sourceProvenance != null) { if (typeof object.sourceProvenance !== "object") throw TypeError(".grafeas.v1.BuildProvenance.sourceProvenance: object expected"); - message.sourceProvenance = $root.grafeas.v1.Source.fromObject(object.sourceProvenance); + message.sourceProvenance = $root.grafeas.v1.Source.fromObject(object.sourceProvenance, long + 1); } if (object.triggerId != null) message.triggerId = String(object.triggerId); @@ -12112,8 +12731,11 @@ if (typeof object.buildOptions !== "object") throw TypeError(".grafeas.v1.BuildProvenance.buildOptions: object expected"); message.buildOptions = {}; - for (var keys = Object.keys(object.buildOptions), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.buildOptions), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.buildOptions, keys[i]); message.buildOptions[keys[i]] = String(object.buildOptions[keys[i]]); + } } if (object.builderVersion != null) message.builderVersion = String(object.builderVersion); @@ -12182,8 +12804,11 @@ var keys2; if (message.buildOptions && (keys2 = Object.keys(message.buildOptions)).length) { object.buildOptions = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.buildOptions, keys2[j]); object.buildOptions[keys2[j]] = message.buildOptions[keys2[j]]; + } } if (message.builderVersion != null && message.hasOwnProperty("builderVersion")) object.builderVersion = message.builderVersion; @@ -12244,7 +12869,7 @@ this.additionalContexts = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12343,9 +12968,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Source.decode = function decode(reader, length, error) { + Source.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Source(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -12369,28 +12998,30 @@ key = reader.string(); break; case 2: - value = $root.grafeas.v1.FileHashes.decode(reader, reader.uint32()); + value = $root.grafeas.v1.FileHashes.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.fileHashes, key); message.fileHashes[key] = value; break; } case 3: { - message.context = $root.grafeas.v1.SourceContext.decode(reader, reader.uint32()); + message.context = $root.grafeas.v1.SourceContext.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.additionalContexts && message.additionalContexts.length)) message.additionalContexts = []; - message.additionalContexts.push($root.grafeas.v1.SourceContext.decode(reader, reader.uint32())); + message.additionalContexts.push($root.grafeas.v1.SourceContext.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12421,9 +13052,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Source.verify = function verify(message) { + Source.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.artifactStorageSourceUri != null && message.hasOwnProperty("artifactStorageSourceUri")) if (!$util.isString(message.artifactStorageSourceUri)) return "artifactStorageSourceUri: string expected"; @@ -12432,13 +13067,13 @@ return "fileHashes: object expected"; var key = Object.keys(message.fileHashes); for (var i = 0; i < key.length; ++i) { - var error = $root.grafeas.v1.FileHashes.verify(message.fileHashes[key[i]]); + var error = $root.grafeas.v1.FileHashes.verify(message.fileHashes[key[i]], long + 1); if (error) return "fileHashes." + error; } } if (message.context != null && message.hasOwnProperty("context")) { - var error = $root.grafeas.v1.SourceContext.verify(message.context); + var error = $root.grafeas.v1.SourceContext.verify(message.context, long + 1); if (error) return "context." + error; } @@ -12446,7 +13081,7 @@ if (!Array.isArray(message.additionalContexts)) return "additionalContexts: array expected"; for (var i = 0; i < message.additionalContexts.length; ++i) { - var error = $root.grafeas.v1.SourceContext.verify(message.additionalContexts[i]); + var error = $root.grafeas.v1.SourceContext.verify(message.additionalContexts[i], long + 1); if (error) return "additionalContexts." + error; } @@ -12462,9 +13097,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Source} Source */ - Source.fromObject = function fromObject(object) { + Source.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Source) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Source(); if (object.artifactStorageSourceUri != null) message.artifactStorageSourceUri = String(object.artifactStorageSourceUri); @@ -12473,15 +13112,17 @@ throw TypeError(".grafeas.v1.Source.fileHashes: object expected"); message.fileHashes = {}; for (var keys = Object.keys(object.fileHashes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.fileHashes, keys[i]); if (typeof object.fileHashes[keys[i]] !== "object") throw TypeError(".grafeas.v1.Source.fileHashes: object expected"); - message.fileHashes[keys[i]] = $root.grafeas.v1.FileHashes.fromObject(object.fileHashes[keys[i]]); + message.fileHashes[keys[i]] = $root.grafeas.v1.FileHashes.fromObject(object.fileHashes[keys[i]], long + 1); } } if (object.context != null) { if (typeof object.context !== "object") throw TypeError(".grafeas.v1.Source.context: object expected"); - message.context = $root.grafeas.v1.SourceContext.fromObject(object.context); + message.context = $root.grafeas.v1.SourceContext.fromObject(object.context, long + 1); } if (object.additionalContexts) { if (!Array.isArray(object.additionalContexts)) @@ -12490,7 +13131,7 @@ for (var i = 0; i < object.additionalContexts.length; ++i) { if (typeof object.additionalContexts[i] !== "object") throw TypeError(".grafeas.v1.Source.additionalContexts: object expected"); - message.additionalContexts[i] = $root.grafeas.v1.SourceContext.fromObject(object.additionalContexts[i]); + message.additionalContexts[i] = $root.grafeas.v1.SourceContext.fromObject(object.additionalContexts[i], long + 1); } } return message; @@ -12522,8 +13163,11 @@ var keys2; if (message.fileHashes && (keys2 = Object.keys(message.fileHashes)).length) { object.fileHashes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.fileHashes, keys2[j]); object.fileHashes[keys2[j]] = $root.grafeas.v1.FileHashes.toObject(message.fileHashes[keys2[j]], options); + } } if (message.context != null && message.hasOwnProperty("context")) object.context = $root.grafeas.v1.SourceContext.toObject(message.context, options); @@ -12585,7 +13229,7 @@ this.fileHash = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12651,9 +13295,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileHashes.decode = function decode(reader, length, error) { + FileHashes.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.FileHashes(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12663,11 +13311,11 @@ case 1: { if (!(message.fileHash && message.fileHash.length)) message.fileHash = []; - message.fileHash.push($root.grafeas.v1.Hash.decode(reader, reader.uint32())); + message.fileHash.push($root.grafeas.v1.Hash.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12698,14 +13346,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileHashes.verify = function verify(message) { + FileHashes.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fileHash != null && message.hasOwnProperty("fileHash")) { if (!Array.isArray(message.fileHash)) return "fileHash: array expected"; for (var i = 0; i < message.fileHash.length; ++i) { - var error = $root.grafeas.v1.Hash.verify(message.fileHash[i]); + var error = $root.grafeas.v1.Hash.verify(message.fileHash[i], long + 1); if (error) return "fileHash." + error; } @@ -12721,9 +13373,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.FileHashes} FileHashes */ - FileHashes.fromObject = function fromObject(object) { + FileHashes.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.FileHashes) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.FileHashes(); if (object.fileHash) { if (!Array.isArray(object.fileHash)) @@ -12732,7 +13388,7 @@ for (var i = 0; i < object.fileHash.length; ++i) { if (typeof object.fileHash[i] !== "object") throw TypeError(".grafeas.v1.FileHashes.fileHash: object expected"); - message.fileHash[i] = $root.grafeas.v1.Hash.fromObject(object.fileHash[i]); + message.fileHash[i] = $root.grafeas.v1.Hash.fromObject(object.fileHash[i], long + 1); } } return message; @@ -12811,7 +13467,7 @@ function Hash(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12886,9 +13542,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Hash.decode = function decode(reader, length, error) { + Hash.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Hash(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12904,7 +13564,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12935,9 +13595,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Hash.verify = function verify(message) { + Hash.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -12955,9 +13619,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Hash} Hash */ - Hash.fromObject = function fromObject(object) { + Hash.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Hash) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Hash(); if (object.type != null) message.type = String(object.type); @@ -13056,7 +13724,7 @@ this.waitFor = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13174,9 +13842,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Command.decode = function decode(reader, length, error) { + Command.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Command(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13214,7 +13886,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13245,9 +13917,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Command.verify = function verify(message) { + Command.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -13289,9 +13965,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Command} Command */ - Command.fromObject = function fromObject(object) { + Command.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Command) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Command(); if (object.name != null) message.name = String(object.name); @@ -13422,7 +14102,7 @@ this.names = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13508,9 +14188,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Artifact.decode = function decode(reader, length, error) { + Artifact.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Artifact(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13532,7 +14216,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13563,9 +14247,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Artifact.verify = function verify(message) { + Artifact.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.checksum != null && message.hasOwnProperty("checksum")) if (!$util.isString(message.checksum)) return "checksum: string expected"; @@ -13590,9 +14278,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Artifact} Artifact */ - Artifact.fromObject = function fromObject(object) { + Artifact.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Artifact) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Artifact(); if (object.checksum != null) message.checksum = String(object.checksum); @@ -13692,7 +14384,7 @@ this.labels = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13802,9 +14494,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SourceContext.decode = function decode(reader, length, error) { + SourceContext.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SourceContext(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -13812,15 +14508,15 @@ break; switch (tag >>> 3) { case 1: { - message.cloudRepo = $root.grafeas.v1.CloudRepoSourceContext.decode(reader, reader.uint32()); + message.cloudRepo = $root.grafeas.v1.CloudRepoSourceContext.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.gerrit = $root.grafeas.v1.GerritSourceContext.decode(reader, reader.uint32()); + message.gerrit = $root.grafeas.v1.GerritSourceContext.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.git = $root.grafeas.v1.GitSourceContext.decode(reader, reader.uint32()); + message.git = $root.grafeas.v1.GitSourceContext.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -13839,15 +14535,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13878,14 +14576,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SourceContext.verify = function verify(message) { + SourceContext.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.cloudRepo != null && message.hasOwnProperty("cloudRepo")) { properties.context = 1; { - var error = $root.grafeas.v1.CloudRepoSourceContext.verify(message.cloudRepo); + var error = $root.grafeas.v1.CloudRepoSourceContext.verify(message.cloudRepo, long + 1); if (error) return "cloudRepo." + error; } @@ -13895,7 +14597,7 @@ return "context: multiple values"; properties.context = 1; { - var error = $root.grafeas.v1.GerritSourceContext.verify(message.gerrit); + var error = $root.grafeas.v1.GerritSourceContext.verify(message.gerrit, long + 1); if (error) return "gerrit." + error; } @@ -13905,7 +14607,7 @@ return "context: multiple values"; properties.context = 1; { - var error = $root.grafeas.v1.GitSourceContext.verify(message.git); + var error = $root.grafeas.v1.GitSourceContext.verify(message.git, long + 1); if (error) return "git." + error; } @@ -13929,31 +14631,38 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SourceContext} SourceContext */ - SourceContext.fromObject = function fromObject(object) { + SourceContext.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SourceContext) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SourceContext(); if (object.cloudRepo != null) { if (typeof object.cloudRepo !== "object") throw TypeError(".grafeas.v1.SourceContext.cloudRepo: object expected"); - message.cloudRepo = $root.grafeas.v1.CloudRepoSourceContext.fromObject(object.cloudRepo); + message.cloudRepo = $root.grafeas.v1.CloudRepoSourceContext.fromObject(object.cloudRepo, long + 1); } if (object.gerrit != null) { if (typeof object.gerrit !== "object") throw TypeError(".grafeas.v1.SourceContext.gerrit: object expected"); - message.gerrit = $root.grafeas.v1.GerritSourceContext.fromObject(object.gerrit); + message.gerrit = $root.grafeas.v1.GerritSourceContext.fromObject(object.gerrit, long + 1); } if (object.git != null) { if (typeof object.git !== "object") throw TypeError(".grafeas.v1.SourceContext.git: object expected"); - message.git = $root.grafeas.v1.GitSourceContext.fromObject(object.git); + message.git = $root.grafeas.v1.GitSourceContext.fromObject(object.git, long + 1); } if (object.labels) { if (typeof object.labels !== "object") throw TypeError(".grafeas.v1.SourceContext.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } return message; }; @@ -13991,8 +14700,11 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } return object; }; @@ -14047,7 +14759,7 @@ function AliasContext(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14122,9 +14834,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AliasContext.decode = function decode(reader, length, error) { + AliasContext.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.AliasContext(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14140,7 +14856,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14171,9 +14887,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AliasContext.verify = function verify(message) { + AliasContext.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.kind != null && message.hasOwnProperty("kind")) switch (message.kind) { default: @@ -14198,9 +14918,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.AliasContext} AliasContext */ - AliasContext.fromObject = function fromObject(object) { + AliasContext.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.AliasContext) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.AliasContext(); switch (object.kind) { default: @@ -14324,7 +15048,7 @@ function CloudRepoSourceContext(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14423,9 +15147,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CloudRepoSourceContext.decode = function decode(reader, length, error) { + CloudRepoSourceContext.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.CloudRepoSourceContext(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14433,7 +15161,7 @@ break; switch (tag >>> 3) { case 1: { - message.repoId = $root.grafeas.v1.RepoId.decode(reader, reader.uint32()); + message.repoId = $root.grafeas.v1.RepoId.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -14441,11 +15169,11 @@ break; } case 3: { - message.aliasContext = $root.grafeas.v1.AliasContext.decode(reader, reader.uint32()); + message.aliasContext = $root.grafeas.v1.AliasContext.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14476,12 +15204,16 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CloudRepoSourceContext.verify = function verify(message) { + CloudRepoSourceContext.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.repoId != null && message.hasOwnProperty("repoId")) { - var error = $root.grafeas.v1.RepoId.verify(message.repoId); + var error = $root.grafeas.v1.RepoId.verify(message.repoId, long + 1); if (error) return "repoId." + error; } @@ -14495,7 +15227,7 @@ return "revision: multiple values"; properties.revision = 1; { - var error = $root.grafeas.v1.AliasContext.verify(message.aliasContext); + var error = $root.grafeas.v1.AliasContext.verify(message.aliasContext, long + 1); if (error) return "aliasContext." + error; } @@ -14511,21 +15243,25 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.CloudRepoSourceContext} CloudRepoSourceContext */ - CloudRepoSourceContext.fromObject = function fromObject(object) { + CloudRepoSourceContext.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.CloudRepoSourceContext) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.CloudRepoSourceContext(); if (object.repoId != null) { if (typeof object.repoId !== "object") throw TypeError(".grafeas.v1.CloudRepoSourceContext.repoId: object expected"); - message.repoId = $root.grafeas.v1.RepoId.fromObject(object.repoId); + message.repoId = $root.grafeas.v1.RepoId.fromObject(object.repoId, long + 1); } if (object.revisionId != null) message.revisionId = String(object.revisionId); if (object.aliasContext != null) { if (typeof object.aliasContext !== "object") throw TypeError(".grafeas.v1.CloudRepoSourceContext.aliasContext: object expected"); - message.aliasContext = $root.grafeas.v1.AliasContext.fromObject(object.aliasContext); + message.aliasContext = $root.grafeas.v1.AliasContext.fromObject(object.aliasContext, long + 1); } return message; }; @@ -14612,7 +15348,7 @@ function GerritSourceContext(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14721,9 +15457,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GerritSourceContext.decode = function decode(reader, length, error) { + GerritSourceContext.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.GerritSourceContext(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14743,11 +15483,11 @@ break; } case 4: { - message.aliasContext = $root.grafeas.v1.AliasContext.decode(reader, reader.uint32()); + message.aliasContext = $root.grafeas.v1.AliasContext.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14778,9 +15518,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GerritSourceContext.verify = function verify(message) { + GerritSourceContext.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.hostUri != null && message.hasOwnProperty("hostUri")) if (!$util.isString(message.hostUri)) @@ -14798,7 +15542,7 @@ return "revision: multiple values"; properties.revision = 1; { - var error = $root.grafeas.v1.AliasContext.verify(message.aliasContext); + var error = $root.grafeas.v1.AliasContext.verify(message.aliasContext, long + 1); if (error) return "aliasContext." + error; } @@ -14814,9 +15558,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.GerritSourceContext} GerritSourceContext */ - GerritSourceContext.fromObject = function fromObject(object) { + GerritSourceContext.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.GerritSourceContext) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.GerritSourceContext(); if (object.hostUri != null) message.hostUri = String(object.hostUri); @@ -14827,7 +15575,7 @@ if (object.aliasContext != null) { if (typeof object.aliasContext !== "object") throw TypeError(".grafeas.v1.GerritSourceContext.aliasContext: object expected"); - message.aliasContext = $root.grafeas.v1.AliasContext.fromObject(object.aliasContext); + message.aliasContext = $root.grafeas.v1.AliasContext.fromObject(object.aliasContext, long + 1); } return message; }; @@ -14916,7 +15664,7 @@ function GitSourceContext(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14991,9 +15739,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GitSourceContext.decode = function decode(reader, length, error) { + GitSourceContext.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.GitSourceContext(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15009,7 +15761,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15040,9 +15792,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GitSourceContext.verify = function verify(message) { + GitSourceContext.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.url != null && message.hasOwnProperty("url")) if (!$util.isString(message.url)) return "url: string expected"; @@ -15060,9 +15816,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.GitSourceContext} GitSourceContext */ - GitSourceContext.fromObject = function fromObject(object) { + GitSourceContext.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.GitSourceContext) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.GitSourceContext(); if (object.url != null) message.url = String(object.url); @@ -15145,7 +15905,7 @@ function RepoId(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15234,9 +15994,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RepoId.decode = function decode(reader, length, error) { + RepoId.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.RepoId(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15244,7 +16008,7 @@ break; switch (tag >>> 3) { case 1: { - message.projectRepoId = $root.grafeas.v1.ProjectRepoId.decode(reader, reader.uint32()); + message.projectRepoId = $root.grafeas.v1.ProjectRepoId.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -15252,7 +16016,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15283,14 +16047,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RepoId.verify = function verify(message) { + RepoId.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.projectRepoId != null && message.hasOwnProperty("projectRepoId")) { properties.id = 1; { - var error = $root.grafeas.v1.ProjectRepoId.verify(message.projectRepoId); + var error = $root.grafeas.v1.ProjectRepoId.verify(message.projectRepoId, long + 1); if (error) return "projectRepoId." + error; } @@ -15313,14 +16081,18 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.RepoId} RepoId */ - RepoId.fromObject = function fromObject(object) { + RepoId.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.RepoId) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.RepoId(); if (object.projectRepoId != null) { if (typeof object.projectRepoId !== "object") throw TypeError(".grafeas.v1.RepoId.projectRepoId: object expected"); - message.projectRepoId = $root.grafeas.v1.ProjectRepoId.fromObject(object.projectRepoId); + message.projectRepoId = $root.grafeas.v1.ProjectRepoId.fromObject(object.projectRepoId, long + 1); } if (object.uid != null) message.uid = String(object.uid); @@ -15403,7 +16175,7 @@ function ProjectRepoId(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15478,9 +16250,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProjectRepoId.decode = function decode(reader, length, error) { + ProjectRepoId.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ProjectRepoId(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15496,7 +16272,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15527,9 +16303,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProjectRepoId.verify = function verify(message) { + ProjectRepoId.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.projectId != null && message.hasOwnProperty("projectId")) if (!$util.isString(message.projectId)) return "projectId: string expected"; @@ -15547,9 +16327,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ProjectRepoId} ProjectRepoId */ - ProjectRepoId.fromObject = function fromObject(object) { + ProjectRepoId.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ProjectRepoId) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ProjectRepoId(); if (object.projectId != null) message.projectId = String(object.projectId); @@ -15639,7 +16423,7 @@ this.version = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15800,9 +16584,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ComplianceNote.decode = function decode(reader, length, error) { + ComplianceNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ComplianceNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15820,7 +16608,7 @@ case 3: { if (!(message.version && message.version.length)) message.version = []; - message.version.push($root.grafeas.v1.ComplianceVersion.decode(reader, reader.uint32())); + message.version.push($root.grafeas.v1.ComplianceVersion.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -15832,7 +16620,7 @@ break; } case 6: { - message.cisBenchmark = $root.grafeas.v1.ComplianceNote.CisBenchmark.decode(reader, reader.uint32()); + message.cisBenchmark = $root.grafeas.v1.ComplianceNote.CisBenchmark.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -15844,7 +16632,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15875,9 +16663,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ComplianceNote.verify = function verify(message) { + ComplianceNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.title != null && message.hasOwnProperty("title")) if (!$util.isString(message.title)) @@ -15889,7 +16681,7 @@ if (!Array.isArray(message.version)) return "version: array expected"; for (var i = 0; i < message.version.length; ++i) { - var error = $root.grafeas.v1.ComplianceVersion.verify(message.version[i]); + var error = $root.grafeas.v1.ComplianceVersion.verify(message.version[i], long + 1); if (error) return "version." + error; } @@ -15903,7 +16695,7 @@ if (message.cisBenchmark != null && message.hasOwnProperty("cisBenchmark")) { properties.complianceType = 1; { - var error = $root.grafeas.v1.ComplianceNote.CisBenchmark.verify(message.cisBenchmark); + var error = $root.grafeas.v1.ComplianceNote.CisBenchmark.verify(message.cisBenchmark, long + 1); if (error) return "cisBenchmark." + error; } @@ -15927,9 +16719,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ComplianceNote} ComplianceNote */ - ComplianceNote.fromObject = function fromObject(object) { + ComplianceNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ComplianceNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ComplianceNote(); if (object.title != null) message.title = String(object.title); @@ -15942,7 +16738,7 @@ for (var i = 0; i < object.version.length; ++i) { if (typeof object.version[i] !== "object") throw TypeError(".grafeas.v1.ComplianceNote.version: object expected"); - message.version[i] = $root.grafeas.v1.ComplianceVersion.fromObject(object.version[i]); + message.version[i] = $root.grafeas.v1.ComplianceVersion.fromObject(object.version[i], long + 1); } } if (object.rationale != null) @@ -15952,7 +16748,7 @@ if (object.cisBenchmark != null) { if (typeof object.cisBenchmark !== "object") throw TypeError(".grafeas.v1.ComplianceNote.cisBenchmark: object expected"); - message.cisBenchmark = $root.grafeas.v1.ComplianceNote.CisBenchmark.fromObject(object.cisBenchmark); + message.cisBenchmark = $root.grafeas.v1.ComplianceNote.CisBenchmark.fromObject(object.cisBenchmark, long + 1); } if (object.scanInstructions != null) if (typeof object.scanInstructions === "string") @@ -16067,7 +16863,7 @@ function CisBenchmark(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16142,9 +16938,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CisBenchmark.decode = function decode(reader, length, error) { + CisBenchmark.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ComplianceNote.CisBenchmark(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16160,7 +16960,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16191,9 +16991,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CisBenchmark.verify = function verify(message) { + CisBenchmark.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.profileLevel != null && message.hasOwnProperty("profileLevel")) if (!$util.isInteger(message.profileLevel)) return "profileLevel: integer expected"; @@ -16220,9 +17024,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ComplianceNote.CisBenchmark} CisBenchmark */ - CisBenchmark.fromObject = function fromObject(object) { + CisBenchmark.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ComplianceNote.CisBenchmark) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ComplianceNote.CisBenchmark(); if (object.profileLevel != null) message.profileLevel = object.profileLevel | 0; @@ -16339,7 +17147,7 @@ function ComplianceVersion(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16424,9 +17232,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ComplianceVersion.decode = function decode(reader, length, error) { + ComplianceVersion.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ComplianceVersion(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16446,7 +17258,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16477,9 +17289,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ComplianceVersion.verify = function verify(message) { + ComplianceVersion.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.cpeUri != null && message.hasOwnProperty("cpeUri")) if (!$util.isString(message.cpeUri)) return "cpeUri: string expected"; @@ -16500,9 +17316,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ComplianceVersion} ComplianceVersion */ - ComplianceVersion.fromObject = function fromObject(object) { + ComplianceVersion.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ComplianceVersion) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ComplianceVersion(); if (object.cpeUri != null) message.cpeUri = String(object.cpeUri); @@ -16592,7 +17412,7 @@ this.nonCompliantFiles = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16678,9 +17498,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ComplianceOccurrence.decode = function decode(reader, length, error) { + ComplianceOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ComplianceOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16690,7 +17514,7 @@ case 2: { if (!(message.nonCompliantFiles && message.nonCompliantFiles.length)) message.nonCompliantFiles = []; - message.nonCompliantFiles.push($root.grafeas.v1.NonCompliantFile.decode(reader, reader.uint32())); + message.nonCompliantFiles.push($root.grafeas.v1.NonCompliantFile.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -16698,11 +17522,11 @@ break; } case 4: { - message.version = $root.grafeas.v1.ComplianceVersion.decode(reader, reader.uint32()); + message.version = $root.grafeas.v1.ComplianceVersion.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16733,14 +17557,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ComplianceOccurrence.verify = function verify(message) { + ComplianceOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.nonCompliantFiles != null && message.hasOwnProperty("nonCompliantFiles")) { if (!Array.isArray(message.nonCompliantFiles)) return "nonCompliantFiles: array expected"; for (var i = 0; i < message.nonCompliantFiles.length; ++i) { - var error = $root.grafeas.v1.NonCompliantFile.verify(message.nonCompliantFiles[i]); + var error = $root.grafeas.v1.NonCompliantFile.verify(message.nonCompliantFiles[i], long + 1); if (error) return "nonCompliantFiles." + error; } @@ -16749,7 +17577,7 @@ if (!$util.isString(message.nonComplianceReason)) return "nonComplianceReason: string expected"; if (message.version != null && message.hasOwnProperty("version")) { - var error = $root.grafeas.v1.ComplianceVersion.verify(message.version); + var error = $root.grafeas.v1.ComplianceVersion.verify(message.version, long + 1); if (error) return "version." + error; } @@ -16764,9 +17592,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ComplianceOccurrence} ComplianceOccurrence */ - ComplianceOccurrence.fromObject = function fromObject(object) { + ComplianceOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ComplianceOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ComplianceOccurrence(); if (object.nonCompliantFiles) { if (!Array.isArray(object.nonCompliantFiles)) @@ -16775,7 +17607,7 @@ for (var i = 0; i < object.nonCompliantFiles.length; ++i) { if (typeof object.nonCompliantFiles[i] !== "object") throw TypeError(".grafeas.v1.ComplianceOccurrence.nonCompliantFiles: object expected"); - message.nonCompliantFiles[i] = $root.grafeas.v1.NonCompliantFile.fromObject(object.nonCompliantFiles[i]); + message.nonCompliantFiles[i] = $root.grafeas.v1.NonCompliantFile.fromObject(object.nonCompliantFiles[i], long + 1); } } if (object.nonComplianceReason != null) @@ -16783,7 +17615,7 @@ if (object.version != null) { if (typeof object.version !== "object") throw TypeError(".grafeas.v1.ComplianceOccurrence.version: object expected"); - message.version = $root.grafeas.v1.ComplianceVersion.fromObject(object.version); + message.version = $root.grafeas.v1.ComplianceVersion.fromObject(object.version, long + 1); } return message; }; @@ -16870,7 +17702,7 @@ function NonCompliantFile(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16955,9 +17787,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NonCompliantFile.decode = function decode(reader, length, error) { + NonCompliantFile.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.NonCompliantFile(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16977,7 +17813,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17008,9 +17844,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NonCompliantFile.verify = function verify(message) { + NonCompliantFile.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) if (!$util.isString(message.path)) return "path: string expected"; @@ -17031,9 +17871,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.NonCompliantFile} NonCompliantFile */ - NonCompliantFile.fromObject = function fromObject(object) { + NonCompliantFile.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.NonCompliantFile) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.NonCompliantFile(); if (object.path != null) message.path = String(object.path); @@ -17152,7 +17996,7 @@ function CVSSv3(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17317,9 +18161,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CVSSv3.decode = function decode(reader, length, error) { + CVSSv3.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.CVSSv3(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17371,7 +18219,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17402,9 +18250,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CVSSv3.verify = function verify(message) { + CVSSv3.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.baseScore != null && message.hasOwnProperty("baseScore")) if (typeof message.baseScore !== "number") return "baseScore: number expected"; @@ -17503,9 +18355,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.CVSSv3} CVSSv3 */ - CVSSv3.fromObject = function fromObject(object) { + CVSSv3.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.CVSSv3) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.CVSSv3(); if (object.baseScore != null) message.baseScore = Number(object.baseScore); @@ -17915,7 +18771,7 @@ function CVSS(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18090,9 +18946,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CVSS.decode = function decode(reader, length, error) { + CVSS.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.CVSS(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18148,7 +19008,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18179,9 +19039,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CVSS.verify = function verify(message) { + CVSS.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.baseScore != null && message.hasOwnProperty("baseScore")) if (typeof message.baseScore !== "number") return "baseScore: number expected"; @@ -18297,9 +19161,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.CVSS} CVSS */ - CVSS.fromObject = function fromObject(object) { + CVSS.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.CVSS) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.CVSS(); if (object.baseScore != null) message.baseScore = Number(object.baseScore); @@ -18794,7 +19662,7 @@ this.resourceUri = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18860,9 +19728,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeploymentNote.decode = function decode(reader, length, error) { + DeploymentNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DeploymentNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18876,7 +19748,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18907,9 +19779,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeploymentNote.verify = function verify(message) { + DeploymentNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.resourceUri != null && message.hasOwnProperty("resourceUri")) { if (!Array.isArray(message.resourceUri)) return "resourceUri: array expected"; @@ -18928,9 +19804,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DeploymentNote} DeploymentNote */ - DeploymentNote.fromObject = function fromObject(object) { + DeploymentNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DeploymentNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DeploymentNote(); if (object.resourceUri) { if (!Array.isArray(object.resourceUri)) @@ -19021,7 +19901,7 @@ this.resourceUri = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19147,9 +20027,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeploymentOccurrence.decode = function decode(reader, length, error) { + DeploymentOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DeploymentOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19161,11 +20045,11 @@ break; } case 2: { - message.deployTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deployTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.undeployTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.undeployTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -19187,7 +20071,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19218,19 +20102,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeploymentOccurrence.verify = function verify(message) { + DeploymentOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.userEmail != null && message.hasOwnProperty("userEmail")) if (!$util.isString(message.userEmail)) return "userEmail: string expected"; if (message.deployTime != null && message.hasOwnProperty("deployTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deployTime); + var error = $root.google.protobuf.Timestamp.verify(message.deployTime, long + 1); if (error) return "deployTime." + error; } if (message.undeployTime != null && message.hasOwnProperty("undeployTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.undeployTime); + var error = $root.google.protobuf.Timestamp.verify(message.undeployTime, long + 1); if (error) return "undeployTime." + error; } @@ -19268,21 +20156,25 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DeploymentOccurrence} DeploymentOccurrence */ - DeploymentOccurrence.fromObject = function fromObject(object) { + DeploymentOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DeploymentOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DeploymentOccurrence(); if (object.userEmail != null) message.userEmail = String(object.userEmail); if (object.deployTime != null) { if (typeof object.deployTime !== "object") throw TypeError(".grafeas.v1.DeploymentOccurrence.deployTime: object expected"); - message.deployTime = $root.google.protobuf.Timestamp.fromObject(object.deployTime); + message.deployTime = $root.google.protobuf.Timestamp.fromObject(object.deployTime, long + 1); } if (object.undeployTime != null) { if (typeof object.undeployTime !== "object") throw TypeError(".grafeas.v1.DeploymentOccurrence.undeployTime: object expected"); - message.undeployTime = $root.google.protobuf.Timestamp.fromObject(object.undeployTime); + message.undeployTime = $root.google.protobuf.Timestamp.fromObject(object.undeployTime, long + 1); } if (object.config != null) message.config = String(object.config); @@ -19432,7 +20324,7 @@ function DiscoveryNote(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19497,9 +20389,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DiscoveryNote.decode = function decode(reader, length, error) { + DiscoveryNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DiscoveryNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19511,7 +20407,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19542,9 +20438,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DiscoveryNote.verify = function verify(message) { + DiscoveryNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.analysisKind != null && message.hasOwnProperty("analysisKind")) switch (message.analysisKind) { default: @@ -19576,9 +20476,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DiscoveryNote} DiscoveryNote */ - DiscoveryNote.fromObject = function fromObject(object) { + DiscoveryNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DiscoveryNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DiscoveryNote(); switch (object.analysisKind) { default: @@ -19712,6 +20616,8 @@ * @property {google.protobuf.ITimestamp|null} [archiveTime] DiscoveryOccurrence archiveTime * @property {grafeas.v1.DiscoveryOccurrence.ISBOMStatus|null} [sbomStatus] DiscoveryOccurrence sbomStatus * @property {grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation|null} [vulnerabilityAttestation] DiscoveryOccurrence vulnerabilityAttestation + * @property {Array.|null} [files] DiscoveryOccurrence files + * @property {google.protobuf.ITimestamp|null} [lastVulnerabilityUpdateTime] DiscoveryOccurrence lastVulnerabilityUpdateTime */ /** @@ -19724,9 +20630,10 @@ */ function DiscoveryOccurrence(properties) { this.analysisError = []; + this.files = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19810,6 +20717,22 @@ */ DiscoveryOccurrence.prototype.vulnerabilityAttestation = null; + /** + * DiscoveryOccurrence files. + * @member {Array.} files + * @memberof grafeas.v1.DiscoveryOccurrence + * @instance + */ + DiscoveryOccurrence.prototype.files = $util.emptyArray; + + /** + * DiscoveryOccurrence lastVulnerabilityUpdateTime. + * @member {google.protobuf.ITimestamp|null|undefined} lastVulnerabilityUpdateTime + * @memberof grafeas.v1.DiscoveryOccurrence + * @instance + */ + DiscoveryOccurrence.prototype.lastVulnerabilityUpdateTime = null; + /** * Creates a new DiscoveryOccurrence instance using the specified properties. * @function create @@ -19855,6 +20778,11 @@ $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.encode(message.sbomStatus, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); if (message.vulnerabilityAttestation != null && Object.hasOwnProperty.call(message, "vulnerabilityAttestation")) $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.encode(message.vulnerabilityAttestation, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim(); + if (message.files != null && message.files.length) + for (var i = 0; i < message.files.length; ++i) + $root.grafeas.v1.DiscoveryOccurrence.File.encode(message.files[i], writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); + if (message.lastVulnerabilityUpdateTime != null && Object.hasOwnProperty.call(message, "lastVulnerabilityUpdateTime")) + $root.google.protobuf.Timestamp.encode(message.lastVulnerabilityUpdateTime, writer.uint32(/* id 12, wireType 2 =*/98).fork()).ldelim(); return writer; }; @@ -19882,9 +20810,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DiscoveryOccurrence.decode = function decode(reader, length, error) { + DiscoveryOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DiscoveryOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19900,17 +20832,17 @@ break; } case 7: { - message.analysisCompleted = $root.grafeas.v1.DiscoveryOccurrence.AnalysisCompleted.decode(reader, reader.uint32()); + message.analysisCompleted = $root.grafeas.v1.DiscoveryOccurrence.AnalysisCompleted.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { if (!(message.analysisError && message.analysisError.length)) message.analysisError = []; - message.analysisError.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.analysisError.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.analysisStatusError = $root.google.rpc.Status.decode(reader, reader.uint32()); + message.analysisStatusError = $root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -19918,23 +20850,33 @@ break; } case 5: { - message.lastScanTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.lastScanTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.archiveTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.archiveTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.sbomStatus = $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.decode(reader, reader.uint32()); + message.sbomStatus = $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { - message.vulnerabilityAttestation = $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.decode(reader, reader.uint32()); + message.vulnerabilityAttestation = $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.decode(reader, reader.uint32(), undefined, long + 1); + break; + } + case 11: { + if (!(message.files && message.files.length)) + message.files = []; + message.files.push($root.grafeas.v1.DiscoveryOccurrence.File.decode(reader, reader.uint32(), undefined, long + 1)); + break; + } + case 12: { + message.lastVulnerabilityUpdateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19965,9 +20907,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DiscoveryOccurrence.verify = function verify(message) { + DiscoveryOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.continuousAnalysis != null && message.hasOwnProperty("continuousAnalysis")) switch (message.continuousAnalysis) { default: @@ -19991,7 +20937,7 @@ break; } if (message.analysisCompleted != null && message.hasOwnProperty("analysisCompleted")) { - var error = $root.grafeas.v1.DiscoveryOccurrence.AnalysisCompleted.verify(message.analysisCompleted); + var error = $root.grafeas.v1.DiscoveryOccurrence.AnalysisCompleted.verify(message.analysisCompleted, long + 1); if (error) return "analysisCompleted." + error; } @@ -19999,13 +20945,13 @@ if (!Array.isArray(message.analysisError)) return "analysisError: array expected"; for (var i = 0; i < message.analysisError.length; ++i) { - var error = $root.google.rpc.Status.verify(message.analysisError[i]); + var error = $root.google.rpc.Status.verify(message.analysisError[i], long + 1); if (error) return "analysisError." + error; } } if (message.analysisStatusError != null && message.hasOwnProperty("analysisStatusError")) { - var error = $root.google.rpc.Status.verify(message.analysisStatusError); + var error = $root.google.rpc.Status.verify(message.analysisStatusError, long + 1); if (error) return "analysisStatusError." + error; } @@ -20013,25 +20959,39 @@ if (!$util.isString(message.cpe)) return "cpe: string expected"; if (message.lastScanTime != null && message.hasOwnProperty("lastScanTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.lastScanTime); + var error = $root.google.protobuf.Timestamp.verify(message.lastScanTime, long + 1); if (error) return "lastScanTime." + error; } if (message.archiveTime != null && message.hasOwnProperty("archiveTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.archiveTime); + var error = $root.google.protobuf.Timestamp.verify(message.archiveTime, long + 1); if (error) return "archiveTime." + error; } if (message.sbomStatus != null && message.hasOwnProperty("sbomStatus")) { - var error = $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.verify(message.sbomStatus); + var error = $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.verify(message.sbomStatus, long + 1); if (error) return "sbomStatus." + error; } if (message.vulnerabilityAttestation != null && message.hasOwnProperty("vulnerabilityAttestation")) { - var error = $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.verify(message.vulnerabilityAttestation); + var error = $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.verify(message.vulnerabilityAttestation, long + 1); if (error) return "vulnerabilityAttestation." + error; } + if (message.files != null && message.hasOwnProperty("files")) { + if (!Array.isArray(message.files)) + return "files: array expected"; + for (var i = 0; i < message.files.length; ++i) { + var error = $root.grafeas.v1.DiscoveryOccurrence.File.verify(message.files[i], long + 1); + if (error) + return "files." + error; + } + } + if (message.lastVulnerabilityUpdateTime != null && message.hasOwnProperty("lastVulnerabilityUpdateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastVulnerabilityUpdateTime, long + 1); + if (error) + return "lastVulnerabilityUpdateTime." + error; + } return null; }; @@ -20043,9 +21003,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DiscoveryOccurrence} DiscoveryOccurrence */ - DiscoveryOccurrence.fromObject = function fromObject(object) { + DiscoveryOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DiscoveryOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DiscoveryOccurrence(); switch (object.continuousAnalysis) { default: @@ -20106,7 +21070,7 @@ if (object.analysisCompleted != null) { if (typeof object.analysisCompleted !== "object") throw TypeError(".grafeas.v1.DiscoveryOccurrence.analysisCompleted: object expected"); - message.analysisCompleted = $root.grafeas.v1.DiscoveryOccurrence.AnalysisCompleted.fromObject(object.analysisCompleted); + message.analysisCompleted = $root.grafeas.v1.DiscoveryOccurrence.AnalysisCompleted.fromObject(object.analysisCompleted, long + 1); } if (object.analysisError) { if (!Array.isArray(object.analysisError)) @@ -20115,35 +21079,50 @@ for (var i = 0; i < object.analysisError.length; ++i) { if (typeof object.analysisError[i] !== "object") throw TypeError(".grafeas.v1.DiscoveryOccurrence.analysisError: object expected"); - message.analysisError[i] = $root.google.rpc.Status.fromObject(object.analysisError[i]); + message.analysisError[i] = $root.google.rpc.Status.fromObject(object.analysisError[i], long + 1); } } if (object.analysisStatusError != null) { if (typeof object.analysisStatusError !== "object") throw TypeError(".grafeas.v1.DiscoveryOccurrence.analysisStatusError: object expected"); - message.analysisStatusError = $root.google.rpc.Status.fromObject(object.analysisStatusError); + message.analysisStatusError = $root.google.rpc.Status.fromObject(object.analysisStatusError, long + 1); } if (object.cpe != null) message.cpe = String(object.cpe); if (object.lastScanTime != null) { if (typeof object.lastScanTime !== "object") throw TypeError(".grafeas.v1.DiscoveryOccurrence.lastScanTime: object expected"); - message.lastScanTime = $root.google.protobuf.Timestamp.fromObject(object.lastScanTime); + message.lastScanTime = $root.google.protobuf.Timestamp.fromObject(object.lastScanTime, long + 1); } if (object.archiveTime != null) { if (typeof object.archiveTime !== "object") throw TypeError(".grafeas.v1.DiscoveryOccurrence.archiveTime: object expected"); - message.archiveTime = $root.google.protobuf.Timestamp.fromObject(object.archiveTime); + message.archiveTime = $root.google.protobuf.Timestamp.fromObject(object.archiveTime, long + 1); } if (object.sbomStatus != null) { if (typeof object.sbomStatus !== "object") throw TypeError(".grafeas.v1.DiscoveryOccurrence.sbomStatus: object expected"); - message.sbomStatus = $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.fromObject(object.sbomStatus); + message.sbomStatus = $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.fromObject(object.sbomStatus, long + 1); } if (object.vulnerabilityAttestation != null) { if (typeof object.vulnerabilityAttestation !== "object") throw TypeError(".grafeas.v1.DiscoveryOccurrence.vulnerabilityAttestation: object expected"); - message.vulnerabilityAttestation = $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.fromObject(object.vulnerabilityAttestation); + message.vulnerabilityAttestation = $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.fromObject(object.vulnerabilityAttestation, long + 1); + } + if (object.files) { + if (!Array.isArray(object.files)) + throw TypeError(".grafeas.v1.DiscoveryOccurrence.files: array expected"); + message.files = []; + for (var i = 0; i < object.files.length; ++i) { + if (typeof object.files[i] !== "object") + throw TypeError(".grafeas.v1.DiscoveryOccurrence.files: object expected"); + message.files[i] = $root.grafeas.v1.DiscoveryOccurrence.File.fromObject(object.files[i], long + 1); + } + } + if (object.lastVulnerabilityUpdateTime != null) { + if (typeof object.lastVulnerabilityUpdateTime !== "object") + throw TypeError(".grafeas.v1.DiscoveryOccurrence.lastVulnerabilityUpdateTime: object expected"); + message.lastVulnerabilityUpdateTime = $root.google.protobuf.Timestamp.fromObject(object.lastVulnerabilityUpdateTime, long + 1); } return message; }; @@ -20161,8 +21140,10 @@ if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) + if (options.arrays || options.defaults) { object.analysisError = []; + object.files = []; + } if (options.defaults) { object.continuousAnalysis = options.enums === String ? "CONTINUOUS_ANALYSIS_UNSPECIFIED" : 0; object.analysisStatus = options.enums === String ? "ANALYSIS_STATUS_UNSPECIFIED" : 0; @@ -20173,6 +21154,7 @@ object.analysisCompleted = null; object.sbomStatus = null; object.vulnerabilityAttestation = null; + object.lastVulnerabilityUpdateTime = null; } if (message.continuousAnalysis != null && message.hasOwnProperty("continuousAnalysis")) object.continuousAnalysis = options.enums === String ? $root.grafeas.v1.DiscoveryOccurrence.ContinuousAnalysis[message.continuousAnalysis] === undefined ? message.continuousAnalysis : $root.grafeas.v1.DiscoveryOccurrence.ContinuousAnalysis[message.continuousAnalysis] : message.continuousAnalysis; @@ -20197,6 +21179,13 @@ object.sbomStatus = $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.toObject(message.sbomStatus, options); if (message.vulnerabilityAttestation != null && message.hasOwnProperty("vulnerabilityAttestation")) object.vulnerabilityAttestation = $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.toObject(message.vulnerabilityAttestation, options); + if (message.files && message.files.length) { + object.files = []; + for (var j = 0; j < message.files.length; ++j) + object.files[j] = $root.grafeas.v1.DiscoveryOccurrence.File.toObject(message.files[j], options); + } + if (message.lastVulnerabilityUpdateTime != null && message.hasOwnProperty("lastVulnerabilityUpdateTime")) + object.lastVulnerabilityUpdateTime = $root.google.protobuf.Timestamp.toObject(message.lastVulnerabilityUpdateTime, options); return object; }; @@ -20287,7 +21276,7 @@ this.analysisType = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20353,9 +21342,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AnalysisCompleted.decode = function decode(reader, length, error) { + AnalysisCompleted.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DiscoveryOccurrence.AnalysisCompleted(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20369,7 +21362,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20400,9 +21393,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AnalysisCompleted.verify = function verify(message) { + AnalysisCompleted.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.analysisType != null && message.hasOwnProperty("analysisType")) { if (!Array.isArray(message.analysisType)) return "analysisType: array expected"; @@ -20421,9 +21418,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DiscoveryOccurrence.AnalysisCompleted} AnalysisCompleted */ - AnalysisCompleted.fromObject = function fromObject(object) { + AnalysisCompleted.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DiscoveryOccurrence.AnalysisCompleted) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DiscoveryOccurrence.AnalysisCompleted(); if (object.analysisType) { if (!Array.isArray(object.analysisType)) @@ -20508,7 +21509,7 @@ function SBOMStatus(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20583,9 +21584,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SBOMStatus.decode = function decode(reader, length, error) { + SBOMStatus.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20601,7 +21606,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20632,9 +21637,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SBOMStatus.verify = function verify(message) { + SBOMStatus.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.sbomState != null && message.hasOwnProperty("sbomState")) switch (message.sbomState) { default: @@ -20658,9 +21667,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DiscoveryOccurrence.SBOMStatus} SBOMStatus */ - SBOMStatus.fromObject = function fromObject(object) { + SBOMStatus.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus(); switch (object.sbomState) { default: @@ -20778,7 +21791,7 @@ function VulnerabilityAttestation(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20863,9 +21876,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VulnerabilityAttestation.decode = function decode(reader, length, error) { + VulnerabilityAttestation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20873,7 +21890,7 @@ break; switch (tag >>> 3) { case 1: { - message.lastAttemptTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.lastAttemptTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -20885,7 +21902,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20916,11 +21933,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VulnerabilityAttestation.verify = function verify(message) { + VulnerabilityAttestation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.lastAttemptTime != null && message.hasOwnProperty("lastAttemptTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.lastAttemptTime); + var error = $root.google.protobuf.Timestamp.verify(message.lastAttemptTime, long + 1); if (error) return "lastAttemptTime." + error; } @@ -20947,14 +21968,18 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation} VulnerabilityAttestation */ - VulnerabilityAttestation.fromObject = function fromObject(object) { + VulnerabilityAttestation.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation(); if (object.lastAttemptTime != null) { if (typeof object.lastAttemptTime !== "object") throw TypeError(".grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.lastAttemptTime: object expected"); - message.lastAttemptTime = $root.google.protobuf.Timestamp.fromObject(object.lastAttemptTime); + message.lastAttemptTime = $root.google.protobuf.Timestamp.fromObject(object.lastAttemptTime, long + 1); } switch (object.state) { default: @@ -21053,6 +22078,290 @@ return VulnerabilityAttestation; })(); + DiscoveryOccurrence.File = (function() { + + /** + * Properties of a File. + * @memberof grafeas.v1.DiscoveryOccurrence + * @interface IFile + * @property {string|null} [name] File name + * @property {Object.|null} [digest] File digest + */ + + /** + * Constructs a new File. + * @memberof grafeas.v1.DiscoveryOccurrence + * @classdesc Represents a File. + * @implements IFile + * @constructor + * @param {grafeas.v1.DiscoveryOccurrence.IFile=} [properties] Properties to set + */ + function File(properties) { + this.digest = {}; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null && keys[i] !== "__proto__") + this[keys[i]] = properties[keys[i]]; + } + + /** + * File name. + * @member {string} name + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @instance + */ + File.prototype.name = ""; + + /** + * File digest. + * @member {Object.} digest + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @instance + */ + File.prototype.digest = $util.emptyObject; + + /** + * Creates a new File instance using the specified properties. + * @function create + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @static + * @param {grafeas.v1.DiscoveryOccurrence.IFile=} [properties] Properties to set + * @returns {grafeas.v1.DiscoveryOccurrence.File} File instance + */ + File.create = function create(properties) { + return new File(properties); + }; + + /** + * Encodes the specified File message. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.File.verify|verify} messages. + * @function encode + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @static + * @param {grafeas.v1.DiscoveryOccurrence.IFile} message File message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + File.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.digest != null && Object.hasOwnProperty.call(message, "digest")) + for (var keys = Object.keys(message.digest), i = 0; i < keys.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.digest[keys[i]]).ldelim(); + return writer; + }; + + /** + * Encodes the specified File message, length delimited. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.File.verify|verify} messages. + * @function encodeDelimited + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @static + * @param {grafeas.v1.DiscoveryOccurrence.IFile} message File message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + File.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a File message from the specified reader or buffer. + * @function decode + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {grafeas.v1.DiscoveryOccurrence.File} File + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + File.decode = function decode(reader, length, error, long) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DiscoveryOccurrence.File(), key, value; + while (reader.pos < end) { + var tag = reader.uint32(); + if (tag === error) + break; + switch (tag >>> 3) { + case 1: { + message.name = reader.string(); + break; + } + case 2: { + if (message.digest === $util.emptyObject) + message.digest = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = ""; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = reader.string(); + break; + default: + reader.skipType(tag2 & 7, long); + break; + } + } + if (key === "__proto__") + $util.makeProp(message.digest, key); + message.digest[key] = value; + break; + } + default: + reader.skipType(tag & 7, long); + break; + } + } + return message; + }; + + /** + * Decodes a File message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {grafeas.v1.DiscoveryOccurrence.File} File + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + File.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a File message. + * @function verify + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + File.verify = function verify(message, long) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.digest != null && message.hasOwnProperty("digest")) { + if (!$util.isObject(message.digest)) + return "digest: object expected"; + var key = Object.keys(message.digest); + for (var i = 0; i < key.length; ++i) + if (!$util.isString(message.digest[key[i]])) + return "digest: string{k:string} expected"; + } + return null; + }; + + /** + * Creates a File message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @static + * @param {Object.} object Plain object + * @returns {grafeas.v1.DiscoveryOccurrence.File} File + */ + File.fromObject = function fromObject(object, long) { + if (object instanceof $root.grafeas.v1.DiscoveryOccurrence.File) + return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); + var message = new $root.grafeas.v1.DiscoveryOccurrence.File(); + if (object.name != null) + message.name = String(object.name); + if (object.digest) { + if (typeof object.digest !== "object") + throw TypeError(".grafeas.v1.DiscoveryOccurrence.File.digest: object expected"); + message.digest = {}; + for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.digest, keys[i]); + message.digest[keys[i]] = String(object.digest[keys[i]]); + } + } + return message; + }; + + /** + * Creates a plain object from a File message. Also converts values to other types if specified. + * @function toObject + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @static + * @param {grafeas.v1.DiscoveryOccurrence.File} message File + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + File.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.objects || options.defaults) + object.digest = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + var keys2; + if (message.digest && (keys2 = Object.keys(message.digest)).length) { + object.digest = {}; + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.digest, keys2[j]); + object.digest[keys2[j]] = message.digest[keys2[j]]; + } + } + return object; + }; + + /** + * Converts this File to JSON. + * @function toJSON + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @instance + * @returns {Object.} JSON object + */ + File.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for File + * @function getTypeUrl + * @memberof grafeas.v1.DiscoveryOccurrence.File + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + File.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/grafeas.v1.DiscoveryOccurrence.File"; + }; + + return File; + })(); + return DiscoveryOccurrence; })(); @@ -21076,7 +22385,7 @@ function DSSEAttestationNote(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21141,9 +22450,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DSSEAttestationNote.decode = function decode(reader, length, error) { + DSSEAttestationNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DSSEAttestationNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21151,11 +22464,11 @@ break; switch (tag >>> 3) { case 1: { - message.hint = $root.grafeas.v1.DSSEAttestationNote.DSSEHint.decode(reader, reader.uint32()); + message.hint = $root.grafeas.v1.DSSEAttestationNote.DSSEHint.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21186,11 +22499,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DSSEAttestationNote.verify = function verify(message) { + DSSEAttestationNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.hint != null && message.hasOwnProperty("hint")) { - var error = $root.grafeas.v1.DSSEAttestationNote.DSSEHint.verify(message.hint); + var error = $root.grafeas.v1.DSSEAttestationNote.DSSEHint.verify(message.hint, long + 1); if (error) return "hint." + error; } @@ -21205,14 +22522,18 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DSSEAttestationNote} DSSEAttestationNote */ - DSSEAttestationNote.fromObject = function fromObject(object) { + DSSEAttestationNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DSSEAttestationNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DSSEAttestationNote(); if (object.hint != null) { if (typeof object.hint !== "object") throw TypeError(".grafeas.v1.DSSEAttestationNote.hint: object expected"); - message.hint = $root.grafeas.v1.DSSEAttestationNote.DSSEHint.fromObject(object.hint); + message.hint = $root.grafeas.v1.DSSEAttestationNote.DSSEHint.fromObject(object.hint, long + 1); } return message; }; @@ -21283,7 +22604,7 @@ function DSSEHint(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21348,9 +22669,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DSSEHint.decode = function decode(reader, length, error) { + DSSEHint.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DSSEAttestationNote.DSSEHint(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21362,7 +22687,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21393,9 +22718,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DSSEHint.verify = function verify(message) { + DSSEHint.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.humanReadableName != null && message.hasOwnProperty("humanReadableName")) if (!$util.isString(message.humanReadableName)) return "humanReadableName: string expected"; @@ -21410,9 +22739,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DSSEAttestationNote.DSSEHint} DSSEHint */ - DSSEHint.fromObject = function fromObject(object) { + DSSEHint.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DSSEAttestationNote.DSSEHint) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DSSEAttestationNote.DSSEHint(); if (object.humanReadableName != null) message.humanReadableName = String(object.humanReadableName); @@ -21492,7 +22825,7 @@ function DSSEAttestationOccurrence(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21581,9 +22914,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DSSEAttestationOccurrence.decode = function decode(reader, length, error) { + DSSEAttestationOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DSSEAttestationOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21591,15 +22928,15 @@ break; switch (tag >>> 3) { case 1: { - message.envelope = $root.grafeas.v1.Envelope.decode(reader, reader.uint32()); + message.envelope = $root.grafeas.v1.Envelope.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.statement = $root.grafeas.v1.InTotoStatement.decode(reader, reader.uint32()); + message.statement = $root.grafeas.v1.InTotoStatement.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21630,19 +22967,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DSSEAttestationOccurrence.verify = function verify(message) { + DSSEAttestationOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.envelope != null && message.hasOwnProperty("envelope")) { - var error = $root.grafeas.v1.Envelope.verify(message.envelope); + var error = $root.grafeas.v1.Envelope.verify(message.envelope, long + 1); if (error) return "envelope." + error; } if (message.statement != null && message.hasOwnProperty("statement")) { properties.decodedPayload = 1; { - var error = $root.grafeas.v1.InTotoStatement.verify(message.statement); + var error = $root.grafeas.v1.InTotoStatement.verify(message.statement, long + 1); if (error) return "statement." + error; } @@ -21658,19 +22999,23 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DSSEAttestationOccurrence} DSSEAttestationOccurrence */ - DSSEAttestationOccurrence.fromObject = function fromObject(object) { + DSSEAttestationOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DSSEAttestationOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DSSEAttestationOccurrence(); if (object.envelope != null) { if (typeof object.envelope !== "object") throw TypeError(".grafeas.v1.DSSEAttestationOccurrence.envelope: object expected"); - message.envelope = $root.grafeas.v1.Envelope.fromObject(object.envelope); + message.envelope = $root.grafeas.v1.Envelope.fromObject(object.envelope, long + 1); } if (object.statement != null) { if (typeof object.statement !== "object") throw TypeError(".grafeas.v1.DSSEAttestationOccurrence.statement: object expected"); - message.statement = $root.grafeas.v1.InTotoStatement.fromObject(object.statement); + message.statement = $root.grafeas.v1.InTotoStatement.fromObject(object.statement, long + 1); } return message; }; @@ -22265,7 +23610,7 @@ function Occurrence(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22534,9 +23879,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Occurrence.decode = function decode(reader, length, error) { + Occurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Occurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22564,67 +23913,67 @@ break; } case 6: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.vulnerability = $root.grafeas.v1.VulnerabilityOccurrence.decode(reader, reader.uint32()); + message.vulnerability = $root.grafeas.v1.VulnerabilityOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.build = $root.grafeas.v1.BuildOccurrence.decode(reader, reader.uint32()); + message.build = $root.grafeas.v1.BuildOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { - message.image = $root.grafeas.v1.ImageOccurrence.decode(reader, reader.uint32()); + message.image = $root.grafeas.v1.ImageOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { - message["package"] = $root.grafeas.v1.PackageOccurrence.decode(reader, reader.uint32()); + message["package"] = $root.grafeas.v1.PackageOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { - message.deployment = $root.grafeas.v1.DeploymentOccurrence.decode(reader, reader.uint32()); + message.deployment = $root.grafeas.v1.DeploymentOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.discovery = $root.grafeas.v1.DiscoveryOccurrence.decode(reader, reader.uint32()); + message.discovery = $root.grafeas.v1.DiscoveryOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { - message.attestation = $root.grafeas.v1.AttestationOccurrence.decode(reader, reader.uint32()); + message.attestation = $root.grafeas.v1.AttestationOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { - message.upgrade = $root.grafeas.v1.UpgradeOccurrence.decode(reader, reader.uint32()); + message.upgrade = $root.grafeas.v1.UpgradeOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 16: { - message.compliance = $root.grafeas.v1.ComplianceOccurrence.decode(reader, reader.uint32()); + message.compliance = $root.grafeas.v1.ComplianceOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { - message.dsseAttestation = $root.grafeas.v1.DSSEAttestationOccurrence.decode(reader, reader.uint32()); + message.dsseAttestation = $root.grafeas.v1.DSSEAttestationOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { - message.sbomReference = $root.grafeas.v1.SBOMReferenceOccurrence.decode(reader, reader.uint32()); + message.sbomReference = $root.grafeas.v1.SBOMReferenceOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 20: { - message.secret = $root.grafeas.v1.SecretOccurrence.decode(reader, reader.uint32()); + message.secret = $root.grafeas.v1.SecretOccurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 18: { - message.envelope = $root.grafeas.v1.Envelope.decode(reader, reader.uint32()); + message.envelope = $root.grafeas.v1.Envelope.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22655,9 +24004,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Occurrence.verify = function verify(message) { + Occurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) @@ -22692,19 +24045,19 @@ if (!$util.isString(message.remediation)) return "remediation: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.vulnerability != null && message.hasOwnProperty("vulnerability")) { properties.details = 1; { - var error = $root.grafeas.v1.VulnerabilityOccurrence.verify(message.vulnerability); + var error = $root.grafeas.v1.VulnerabilityOccurrence.verify(message.vulnerability, long + 1); if (error) return "vulnerability." + error; } @@ -22714,7 +24067,7 @@ return "details: multiple values"; properties.details = 1; { - var error = $root.grafeas.v1.BuildOccurrence.verify(message.build); + var error = $root.grafeas.v1.BuildOccurrence.verify(message.build, long + 1); if (error) return "build." + error; } @@ -22724,7 +24077,7 @@ return "details: multiple values"; properties.details = 1; { - var error = $root.grafeas.v1.ImageOccurrence.verify(message.image); + var error = $root.grafeas.v1.ImageOccurrence.verify(message.image, long + 1); if (error) return "image." + error; } @@ -22734,7 +24087,7 @@ return "details: multiple values"; properties.details = 1; { - var error = $root.grafeas.v1.PackageOccurrence.verify(message["package"]); + var error = $root.grafeas.v1.PackageOccurrence.verify(message["package"], long + 1); if (error) return "package." + error; } @@ -22744,7 +24097,7 @@ return "details: multiple values"; properties.details = 1; { - var error = $root.grafeas.v1.DeploymentOccurrence.verify(message.deployment); + var error = $root.grafeas.v1.DeploymentOccurrence.verify(message.deployment, long + 1); if (error) return "deployment." + error; } @@ -22754,7 +24107,7 @@ return "details: multiple values"; properties.details = 1; { - var error = $root.grafeas.v1.DiscoveryOccurrence.verify(message.discovery); + var error = $root.grafeas.v1.DiscoveryOccurrence.verify(message.discovery, long + 1); if (error) return "discovery." + error; } @@ -22764,7 +24117,7 @@ return "details: multiple values"; properties.details = 1; { - var error = $root.grafeas.v1.AttestationOccurrence.verify(message.attestation); + var error = $root.grafeas.v1.AttestationOccurrence.verify(message.attestation, long + 1); if (error) return "attestation." + error; } @@ -22774,7 +24127,7 @@ return "details: multiple values"; properties.details = 1; { - var error = $root.grafeas.v1.UpgradeOccurrence.verify(message.upgrade); + var error = $root.grafeas.v1.UpgradeOccurrence.verify(message.upgrade, long + 1); if (error) return "upgrade." + error; } @@ -22784,7 +24137,7 @@ return "details: multiple values"; properties.details = 1; { - var error = $root.grafeas.v1.ComplianceOccurrence.verify(message.compliance); + var error = $root.grafeas.v1.ComplianceOccurrence.verify(message.compliance, long + 1); if (error) return "compliance." + error; } @@ -22794,7 +24147,7 @@ return "details: multiple values"; properties.details = 1; { - var error = $root.grafeas.v1.DSSEAttestationOccurrence.verify(message.dsseAttestation); + var error = $root.grafeas.v1.DSSEAttestationOccurrence.verify(message.dsseAttestation, long + 1); if (error) return "dsseAttestation." + error; } @@ -22804,7 +24157,7 @@ return "details: multiple values"; properties.details = 1; { - var error = $root.grafeas.v1.SBOMReferenceOccurrence.verify(message.sbomReference); + var error = $root.grafeas.v1.SBOMReferenceOccurrence.verify(message.sbomReference, long + 1); if (error) return "sbomReference." + error; } @@ -22814,13 +24167,13 @@ return "details: multiple values"; properties.details = 1; { - var error = $root.grafeas.v1.SecretOccurrence.verify(message.secret); + var error = $root.grafeas.v1.SecretOccurrence.verify(message.secret, long + 1); if (error) return "secret." + error; } } if (message.envelope != null && message.hasOwnProperty("envelope")) { - var error = $root.grafeas.v1.Envelope.verify(message.envelope); + var error = $root.grafeas.v1.Envelope.verify(message.envelope, long + 1); if (error) return "envelope." + error; } @@ -22835,9 +24188,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Occurrence} Occurrence */ - Occurrence.fromObject = function fromObject(object) { + Occurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Occurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Occurrence(); if (object.name != null) message.name = String(object.name); @@ -22914,77 +24271,77 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".grafeas.v1.Occurrence.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".grafeas.v1.Occurrence.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.vulnerability != null) { if (typeof object.vulnerability !== "object") throw TypeError(".grafeas.v1.Occurrence.vulnerability: object expected"); - message.vulnerability = $root.grafeas.v1.VulnerabilityOccurrence.fromObject(object.vulnerability); + message.vulnerability = $root.grafeas.v1.VulnerabilityOccurrence.fromObject(object.vulnerability, long + 1); } if (object.build != null) { if (typeof object.build !== "object") throw TypeError(".grafeas.v1.Occurrence.build: object expected"); - message.build = $root.grafeas.v1.BuildOccurrence.fromObject(object.build); + message.build = $root.grafeas.v1.BuildOccurrence.fromObject(object.build, long + 1); } if (object.image != null) { if (typeof object.image !== "object") throw TypeError(".grafeas.v1.Occurrence.image: object expected"); - message.image = $root.grafeas.v1.ImageOccurrence.fromObject(object.image); + message.image = $root.grafeas.v1.ImageOccurrence.fromObject(object.image, long + 1); } if (object["package"] != null) { if (typeof object["package"] !== "object") throw TypeError(".grafeas.v1.Occurrence.package: object expected"); - message["package"] = $root.grafeas.v1.PackageOccurrence.fromObject(object["package"]); + message["package"] = $root.grafeas.v1.PackageOccurrence.fromObject(object["package"], long + 1); } if (object.deployment != null) { if (typeof object.deployment !== "object") throw TypeError(".grafeas.v1.Occurrence.deployment: object expected"); - message.deployment = $root.grafeas.v1.DeploymentOccurrence.fromObject(object.deployment); + message.deployment = $root.grafeas.v1.DeploymentOccurrence.fromObject(object.deployment, long + 1); } if (object.discovery != null) { if (typeof object.discovery !== "object") throw TypeError(".grafeas.v1.Occurrence.discovery: object expected"); - message.discovery = $root.grafeas.v1.DiscoveryOccurrence.fromObject(object.discovery); + message.discovery = $root.grafeas.v1.DiscoveryOccurrence.fromObject(object.discovery, long + 1); } if (object.attestation != null) { if (typeof object.attestation !== "object") throw TypeError(".grafeas.v1.Occurrence.attestation: object expected"); - message.attestation = $root.grafeas.v1.AttestationOccurrence.fromObject(object.attestation); + message.attestation = $root.grafeas.v1.AttestationOccurrence.fromObject(object.attestation, long + 1); } if (object.upgrade != null) { if (typeof object.upgrade !== "object") throw TypeError(".grafeas.v1.Occurrence.upgrade: object expected"); - message.upgrade = $root.grafeas.v1.UpgradeOccurrence.fromObject(object.upgrade); + message.upgrade = $root.grafeas.v1.UpgradeOccurrence.fromObject(object.upgrade, long + 1); } if (object.compliance != null) { if (typeof object.compliance !== "object") throw TypeError(".grafeas.v1.Occurrence.compliance: object expected"); - message.compliance = $root.grafeas.v1.ComplianceOccurrence.fromObject(object.compliance); + message.compliance = $root.grafeas.v1.ComplianceOccurrence.fromObject(object.compliance, long + 1); } if (object.dsseAttestation != null) { if (typeof object.dsseAttestation !== "object") throw TypeError(".grafeas.v1.Occurrence.dsseAttestation: object expected"); - message.dsseAttestation = $root.grafeas.v1.DSSEAttestationOccurrence.fromObject(object.dsseAttestation); + message.dsseAttestation = $root.grafeas.v1.DSSEAttestationOccurrence.fromObject(object.dsseAttestation, long + 1); } if (object.sbomReference != null) { if (typeof object.sbomReference !== "object") throw TypeError(".grafeas.v1.Occurrence.sbomReference: object expected"); - message.sbomReference = $root.grafeas.v1.SBOMReferenceOccurrence.fromObject(object.sbomReference); + message.sbomReference = $root.grafeas.v1.SBOMReferenceOccurrence.fromObject(object.sbomReference, long + 1); } if (object.secret != null) { if (typeof object.secret !== "object") throw TypeError(".grafeas.v1.Occurrence.secret: object expected"); - message.secret = $root.grafeas.v1.SecretOccurrence.fromObject(object.secret); + message.secret = $root.grafeas.v1.SecretOccurrence.fromObject(object.secret, long + 1); } if (object.envelope != null) { if (typeof object.envelope !== "object") throw TypeError(".grafeas.v1.Occurrence.envelope: object expected"); - message.envelope = $root.grafeas.v1.Envelope.fromObject(object.envelope); + message.envelope = $root.grafeas.v1.Envelope.fromObject(object.envelope, long + 1); } return message; }; @@ -23163,7 +24520,7 @@ this.relatedNoteNames = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23454,9 +24811,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Note.decode = function decode(reader, length, error) { + Note.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Note(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23482,19 +24843,19 @@ case 5: { if (!(message.relatedUrl && message.relatedUrl.length)) message.relatedUrl = []; - message.relatedUrl.push($root.grafeas.v1.RelatedUrl.decode(reader, reader.uint32())); + message.relatedUrl.push($root.grafeas.v1.RelatedUrl.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { - message.expirationTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expirationTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { @@ -23504,59 +24865,59 @@ break; } case 10: { - message.vulnerability = $root.grafeas.v1.VulnerabilityNote.decode(reader, reader.uint32()); + message.vulnerability = $root.grafeas.v1.VulnerabilityNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { - message.build = $root.grafeas.v1.BuildNote.decode(reader, reader.uint32()); + message.build = $root.grafeas.v1.BuildNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { - message.image = $root.grafeas.v1.ImageNote.decode(reader, reader.uint32()); + message.image = $root.grafeas.v1.ImageNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message["package"] = $root.grafeas.v1.PackageNote.decode(reader, reader.uint32()); + message["package"] = $root.grafeas.v1.PackageNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { - message.deployment = $root.grafeas.v1.DeploymentNote.decode(reader, reader.uint32()); + message.deployment = $root.grafeas.v1.DeploymentNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { - message.discovery = $root.grafeas.v1.DiscoveryNote.decode(reader, reader.uint32()); + message.discovery = $root.grafeas.v1.DiscoveryNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 16: { - message.attestation = $root.grafeas.v1.AttestationNote.decode(reader, reader.uint32()); + message.attestation = $root.grafeas.v1.AttestationNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { - message.upgrade = $root.grafeas.v1.UpgradeNote.decode(reader, reader.uint32()); + message.upgrade = $root.grafeas.v1.UpgradeNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 18: { - message.compliance = $root.grafeas.v1.ComplianceNote.decode(reader, reader.uint32()); + message.compliance = $root.grafeas.v1.ComplianceNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { - message.dsseAttestation = $root.grafeas.v1.DSSEAttestationNote.decode(reader, reader.uint32()); + message.dsseAttestation = $root.grafeas.v1.DSSEAttestationNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 20: { - message.vulnerabilityAssessment = $root.grafeas.v1.VulnerabilityAssessmentNote.decode(reader, reader.uint32()); + message.vulnerabilityAssessment = $root.grafeas.v1.VulnerabilityAssessmentNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 21: { - message.sbomReference = $root.grafeas.v1.SBOMReferenceNote.decode(reader, reader.uint32()); + message.sbomReference = $root.grafeas.v1.SBOMReferenceNote.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.secret = $root.grafeas.v1.SecretNote.decode(reader, reader.uint32()); + message.secret = $root.grafeas.v1.SecretNote.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23587,9 +24948,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Note.verify = function verify(message) { + Note.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) @@ -23624,23 +24989,23 @@ if (!Array.isArray(message.relatedUrl)) return "relatedUrl: array expected"; for (var i = 0; i < message.relatedUrl.length; ++i) { - var error = $root.grafeas.v1.RelatedUrl.verify(message.relatedUrl[i]); + var error = $root.grafeas.v1.RelatedUrl.verify(message.relatedUrl[i], long + 1); if (error) return "relatedUrl." + error; } } if (message.expirationTime != null && message.hasOwnProperty("expirationTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expirationTime); + var error = $root.google.protobuf.Timestamp.verify(message.expirationTime, long + 1); if (error) return "expirationTime." + error; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -23654,7 +25019,7 @@ if (message.vulnerability != null && message.hasOwnProperty("vulnerability")) { properties.type = 1; { - var error = $root.grafeas.v1.VulnerabilityNote.verify(message.vulnerability); + var error = $root.grafeas.v1.VulnerabilityNote.verify(message.vulnerability, long + 1); if (error) return "vulnerability." + error; } @@ -23664,7 +25029,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.BuildNote.verify(message.build); + var error = $root.grafeas.v1.BuildNote.verify(message.build, long + 1); if (error) return "build." + error; } @@ -23674,7 +25039,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.ImageNote.verify(message.image); + var error = $root.grafeas.v1.ImageNote.verify(message.image, long + 1); if (error) return "image." + error; } @@ -23684,7 +25049,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.PackageNote.verify(message["package"]); + var error = $root.grafeas.v1.PackageNote.verify(message["package"], long + 1); if (error) return "package." + error; } @@ -23694,7 +25059,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.DeploymentNote.verify(message.deployment); + var error = $root.grafeas.v1.DeploymentNote.verify(message.deployment, long + 1); if (error) return "deployment." + error; } @@ -23704,7 +25069,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.DiscoveryNote.verify(message.discovery); + var error = $root.grafeas.v1.DiscoveryNote.verify(message.discovery, long + 1); if (error) return "discovery." + error; } @@ -23714,7 +25079,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.AttestationNote.verify(message.attestation); + var error = $root.grafeas.v1.AttestationNote.verify(message.attestation, long + 1); if (error) return "attestation." + error; } @@ -23724,7 +25089,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.UpgradeNote.verify(message.upgrade); + var error = $root.grafeas.v1.UpgradeNote.verify(message.upgrade, long + 1); if (error) return "upgrade." + error; } @@ -23734,7 +25099,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.ComplianceNote.verify(message.compliance); + var error = $root.grafeas.v1.ComplianceNote.verify(message.compliance, long + 1); if (error) return "compliance." + error; } @@ -23744,7 +25109,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.DSSEAttestationNote.verify(message.dsseAttestation); + var error = $root.grafeas.v1.DSSEAttestationNote.verify(message.dsseAttestation, long + 1); if (error) return "dsseAttestation." + error; } @@ -23754,7 +25119,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.VulnerabilityAssessmentNote.verify(message.vulnerabilityAssessment); + var error = $root.grafeas.v1.VulnerabilityAssessmentNote.verify(message.vulnerabilityAssessment, long + 1); if (error) return "vulnerabilityAssessment." + error; } @@ -23764,7 +25129,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.SBOMReferenceNote.verify(message.sbomReference); + var error = $root.grafeas.v1.SBOMReferenceNote.verify(message.sbomReference, long + 1); if (error) return "sbomReference." + error; } @@ -23774,7 +25139,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.grafeas.v1.SecretNote.verify(message.secret); + var error = $root.grafeas.v1.SecretNote.verify(message.secret, long + 1); if (error) return "secret." + error; } @@ -23790,9 +25155,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Note} Note */ - Note.fromObject = function fromObject(object) { + Note.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Note) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Note(); if (object.name != null) message.name = String(object.name); @@ -23871,23 +25240,23 @@ for (var i = 0; i < object.relatedUrl.length; ++i) { if (typeof object.relatedUrl[i] !== "object") throw TypeError(".grafeas.v1.Note.relatedUrl: object expected"); - message.relatedUrl[i] = $root.grafeas.v1.RelatedUrl.fromObject(object.relatedUrl[i]); + message.relatedUrl[i] = $root.grafeas.v1.RelatedUrl.fromObject(object.relatedUrl[i], long + 1); } } if (object.expirationTime != null) { if (typeof object.expirationTime !== "object") throw TypeError(".grafeas.v1.Note.expirationTime: object expected"); - message.expirationTime = $root.google.protobuf.Timestamp.fromObject(object.expirationTime); + message.expirationTime = $root.google.protobuf.Timestamp.fromObject(object.expirationTime, long + 1); } if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".grafeas.v1.Note.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".grafeas.v1.Note.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.relatedNoteNames) { if (!Array.isArray(object.relatedNoteNames)) @@ -23899,67 +25268,67 @@ if (object.vulnerability != null) { if (typeof object.vulnerability !== "object") throw TypeError(".grafeas.v1.Note.vulnerability: object expected"); - message.vulnerability = $root.grafeas.v1.VulnerabilityNote.fromObject(object.vulnerability); + message.vulnerability = $root.grafeas.v1.VulnerabilityNote.fromObject(object.vulnerability, long + 1); } if (object.build != null) { if (typeof object.build !== "object") throw TypeError(".grafeas.v1.Note.build: object expected"); - message.build = $root.grafeas.v1.BuildNote.fromObject(object.build); + message.build = $root.grafeas.v1.BuildNote.fromObject(object.build, long + 1); } if (object.image != null) { if (typeof object.image !== "object") throw TypeError(".grafeas.v1.Note.image: object expected"); - message.image = $root.grafeas.v1.ImageNote.fromObject(object.image); + message.image = $root.grafeas.v1.ImageNote.fromObject(object.image, long + 1); } if (object["package"] != null) { if (typeof object["package"] !== "object") throw TypeError(".grafeas.v1.Note.package: object expected"); - message["package"] = $root.grafeas.v1.PackageNote.fromObject(object["package"]); + message["package"] = $root.grafeas.v1.PackageNote.fromObject(object["package"], long + 1); } if (object.deployment != null) { if (typeof object.deployment !== "object") throw TypeError(".grafeas.v1.Note.deployment: object expected"); - message.deployment = $root.grafeas.v1.DeploymentNote.fromObject(object.deployment); + message.deployment = $root.grafeas.v1.DeploymentNote.fromObject(object.deployment, long + 1); } if (object.discovery != null) { if (typeof object.discovery !== "object") throw TypeError(".grafeas.v1.Note.discovery: object expected"); - message.discovery = $root.grafeas.v1.DiscoveryNote.fromObject(object.discovery); + message.discovery = $root.grafeas.v1.DiscoveryNote.fromObject(object.discovery, long + 1); } if (object.attestation != null) { if (typeof object.attestation !== "object") throw TypeError(".grafeas.v1.Note.attestation: object expected"); - message.attestation = $root.grafeas.v1.AttestationNote.fromObject(object.attestation); + message.attestation = $root.grafeas.v1.AttestationNote.fromObject(object.attestation, long + 1); } if (object.upgrade != null) { if (typeof object.upgrade !== "object") throw TypeError(".grafeas.v1.Note.upgrade: object expected"); - message.upgrade = $root.grafeas.v1.UpgradeNote.fromObject(object.upgrade); + message.upgrade = $root.grafeas.v1.UpgradeNote.fromObject(object.upgrade, long + 1); } if (object.compliance != null) { if (typeof object.compliance !== "object") throw TypeError(".grafeas.v1.Note.compliance: object expected"); - message.compliance = $root.grafeas.v1.ComplianceNote.fromObject(object.compliance); + message.compliance = $root.grafeas.v1.ComplianceNote.fromObject(object.compliance, long + 1); } if (object.dsseAttestation != null) { if (typeof object.dsseAttestation !== "object") throw TypeError(".grafeas.v1.Note.dsseAttestation: object expected"); - message.dsseAttestation = $root.grafeas.v1.DSSEAttestationNote.fromObject(object.dsseAttestation); + message.dsseAttestation = $root.grafeas.v1.DSSEAttestationNote.fromObject(object.dsseAttestation, long + 1); } if (object.vulnerabilityAssessment != null) { if (typeof object.vulnerabilityAssessment !== "object") throw TypeError(".grafeas.v1.Note.vulnerabilityAssessment: object expected"); - message.vulnerabilityAssessment = $root.grafeas.v1.VulnerabilityAssessmentNote.fromObject(object.vulnerabilityAssessment); + message.vulnerabilityAssessment = $root.grafeas.v1.VulnerabilityAssessmentNote.fromObject(object.vulnerabilityAssessment, long + 1); } if (object.sbomReference != null) { if (typeof object.sbomReference !== "object") throw TypeError(".grafeas.v1.Note.sbomReference: object expected"); - message.sbomReference = $root.grafeas.v1.SBOMReferenceNote.fromObject(object.sbomReference); + message.sbomReference = $root.grafeas.v1.SBOMReferenceNote.fromObject(object.sbomReference, long + 1); } if (object.secret != null) { if (typeof object.secret !== "object") throw TypeError(".grafeas.v1.Note.secret: object expected"); - message.secret = $root.grafeas.v1.SecretNote.fromObject(object.secret); + message.secret = $root.grafeas.v1.SecretNote.fromObject(object.secret, long + 1); } return message; }; @@ -24131,7 +25500,7 @@ function GetOccurrenceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24196,9 +25565,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetOccurrenceRequest.decode = function decode(reader, length, error) { + GetOccurrenceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.GetOccurrenceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24210,7 +25583,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24241,9 +25614,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetOccurrenceRequest.verify = function verify(message) { + GetOccurrenceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -24258,9 +25635,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.GetOccurrenceRequest} GetOccurrenceRequest */ - GetOccurrenceRequest.fromObject = function fromObject(object) { + GetOccurrenceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.GetOccurrenceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.GetOccurrenceRequest(); if (object.name != null) message.name = String(object.name); @@ -24326,6 +25707,7 @@ * @property {string|null} [filter] ListOccurrencesRequest filter * @property {number|null} [pageSize] ListOccurrencesRequest pageSize * @property {string|null} [pageToken] ListOccurrencesRequest pageToken + * @property {boolean|null} [returnPartialSuccess] ListOccurrencesRequest returnPartialSuccess */ /** @@ -24339,7 +25721,7 @@ function ListOccurrencesRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24375,6 +25757,14 @@ */ ListOccurrencesRequest.prototype.pageToken = ""; + /** + * ListOccurrencesRequest returnPartialSuccess. + * @member {boolean} returnPartialSuccess + * @memberof grafeas.v1.ListOccurrencesRequest + * @instance + */ + ListOccurrencesRequest.prototype.returnPartialSuccess = false; + /** * Creates a new ListOccurrencesRequest instance using the specified properties. * @function create @@ -24407,6 +25797,8 @@ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.pageSize); if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) writer.uint32(/* id 4, wireType 2 =*/34).string(message.pageToken); + if (message.returnPartialSuccess != null && Object.hasOwnProperty.call(message, "returnPartialSuccess")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.returnPartialSuccess); return writer; }; @@ -24434,9 +25826,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOccurrencesRequest.decode = function decode(reader, length, error) { + ListOccurrencesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ListOccurrencesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24459,8 +25855,12 @@ message.pageToken = reader.string(); break; } + case 5: { + message.returnPartialSuccess = reader.bool(); + break; + } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24491,9 +25891,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOccurrencesRequest.verify = function verify(message) { + ListOccurrencesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -24506,6 +25910,9 @@ if (message.pageToken != null && message.hasOwnProperty("pageToken")) if (!$util.isString(message.pageToken)) return "pageToken: string expected"; + if (message.returnPartialSuccess != null && message.hasOwnProperty("returnPartialSuccess")) + if (typeof message.returnPartialSuccess !== "boolean") + return "returnPartialSuccess: boolean expected"; return null; }; @@ -24517,9 +25924,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ListOccurrencesRequest} ListOccurrencesRequest */ - ListOccurrencesRequest.fromObject = function fromObject(object) { + ListOccurrencesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ListOccurrencesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ListOccurrencesRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -24529,6 +25940,8 @@ message.pageSize = object.pageSize | 0; if (object.pageToken != null) message.pageToken = String(object.pageToken); + if (object.returnPartialSuccess != null) + message.returnPartialSuccess = Boolean(object.returnPartialSuccess); return message; }; @@ -24550,6 +25963,7 @@ object.filter = ""; object.pageSize = 0; object.pageToken = ""; + object.returnPartialSuccess = false; } if (message.parent != null && message.hasOwnProperty("parent")) object.parent = message.parent; @@ -24559,6 +25973,8 @@ object.pageSize = message.pageSize; if (message.pageToken != null && message.hasOwnProperty("pageToken")) object.pageToken = message.pageToken; + if (message.returnPartialSuccess != null && message.hasOwnProperty("returnPartialSuccess")) + object.returnPartialSuccess = message.returnPartialSuccess; return object; }; @@ -24599,6 +26015,7 @@ * @interface IListOccurrencesResponse * @property {Array.|null} [occurrences] ListOccurrencesResponse occurrences * @property {string|null} [nextPageToken] ListOccurrencesResponse nextPageToken + * @property {Array.|null} [unreachable] ListOccurrencesResponse unreachable */ /** @@ -24611,9 +26028,10 @@ */ function ListOccurrencesResponse(properties) { this.occurrences = []; + this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24633,6 +26051,14 @@ */ ListOccurrencesResponse.prototype.nextPageToken = ""; + /** + * ListOccurrencesResponse unreachable. + * @member {Array.} unreachable + * @memberof grafeas.v1.ListOccurrencesResponse + * @instance + */ + ListOccurrencesResponse.prototype.unreachable = $util.emptyArray; + /** * Creates a new ListOccurrencesResponse instance using the specified properties. * @function create @@ -24662,6 +26088,9 @@ $root.grafeas.v1.Occurrence.encode(message.occurrences[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + if (message.unreachable != null && message.unreachable.length) + for (var i = 0; i < message.unreachable.length; ++i) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.unreachable[i]); return writer; }; @@ -24689,9 +26118,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOccurrencesResponse.decode = function decode(reader, length, error) { + ListOccurrencesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ListOccurrencesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24701,15 +26134,21 @@ case 1: { if (!(message.occurrences && message.occurrences.length)) message.occurrences = []; - message.occurrences.push($root.grafeas.v1.Occurrence.decode(reader, reader.uint32())); + message.occurrences.push($root.grafeas.v1.Occurrence.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { message.nextPageToken = reader.string(); break; } + case 3: { + if (!(message.unreachable && message.unreachable.length)) + message.unreachable = []; + message.unreachable.push(reader.string()); + break; + } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24740,14 +26179,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOccurrencesResponse.verify = function verify(message) { + ListOccurrencesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.occurrences != null && message.hasOwnProperty("occurrences")) { if (!Array.isArray(message.occurrences)) return "occurrences: array expected"; for (var i = 0; i < message.occurrences.length; ++i) { - var error = $root.grafeas.v1.Occurrence.verify(message.occurrences[i]); + var error = $root.grafeas.v1.Occurrence.verify(message.occurrences[i], long + 1); if (error) return "occurrences." + error; } @@ -24755,6 +26198,13 @@ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) if (!$util.isString(message.nextPageToken)) return "nextPageToken: string expected"; + if (message.unreachable != null && message.hasOwnProperty("unreachable")) { + if (!Array.isArray(message.unreachable)) + return "unreachable: array expected"; + for (var i = 0; i < message.unreachable.length; ++i) + if (!$util.isString(message.unreachable[i])) + return "unreachable: string[] expected"; + } return null; }; @@ -24766,9 +26216,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ListOccurrencesResponse} ListOccurrencesResponse */ - ListOccurrencesResponse.fromObject = function fromObject(object) { + ListOccurrencesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ListOccurrencesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ListOccurrencesResponse(); if (object.occurrences) { if (!Array.isArray(object.occurrences)) @@ -24777,11 +26231,18 @@ for (var i = 0; i < object.occurrences.length; ++i) { if (typeof object.occurrences[i] !== "object") throw TypeError(".grafeas.v1.ListOccurrencesResponse.occurrences: object expected"); - message.occurrences[i] = $root.grafeas.v1.Occurrence.fromObject(object.occurrences[i]); + message.occurrences[i] = $root.grafeas.v1.Occurrence.fromObject(object.occurrences[i], long + 1); } } if (object.nextPageToken != null) message.nextPageToken = String(object.nextPageToken); + if (object.unreachable) { + if (!Array.isArray(object.unreachable)) + throw TypeError(".grafeas.v1.ListOccurrencesResponse.unreachable: array expected"); + message.unreachable = []; + for (var i = 0; i < object.unreachable.length; ++i) + message.unreachable[i] = String(object.unreachable[i]); + } return message; }; @@ -24798,8 +26259,10 @@ if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) + if (options.arrays || options.defaults) { object.occurrences = []; + object.unreachable = []; + } if (options.defaults) object.nextPageToken = ""; if (message.occurrences && message.occurrences.length) { @@ -24809,6 +26272,11 @@ } if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) object.nextPageToken = message.nextPageToken; + if (message.unreachable && message.unreachable.length) { + object.unreachable = []; + for (var j = 0; j < message.unreachable.length; ++j) + object.unreachable[j] = message.unreachable[j]; + } return object; }; @@ -24861,7 +26329,7 @@ function DeleteOccurrenceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24926,9 +26394,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteOccurrenceRequest.decode = function decode(reader, length, error) { + DeleteOccurrenceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DeleteOccurrenceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24940,7 +26412,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24971,9 +26443,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteOccurrenceRequest.verify = function verify(message) { + DeleteOccurrenceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -24988,9 +26464,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DeleteOccurrenceRequest} DeleteOccurrenceRequest */ - DeleteOccurrenceRequest.fromObject = function fromObject(object) { + DeleteOccurrenceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DeleteOccurrenceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DeleteOccurrenceRequest(); if (object.name != null) message.name = String(object.name); @@ -25067,7 +26547,7 @@ function CreateOccurrenceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25142,9 +26622,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateOccurrenceRequest.decode = function decode(reader, length, error) { + CreateOccurrenceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.CreateOccurrenceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25156,11 +26640,11 @@ break; } case 2: { - message.occurrence = $root.grafeas.v1.Occurrence.decode(reader, reader.uint32()); + message.occurrence = $root.grafeas.v1.Occurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25191,14 +26675,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateOccurrenceRequest.verify = function verify(message) { + CreateOccurrenceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.occurrence != null && message.hasOwnProperty("occurrence")) { - var error = $root.grafeas.v1.Occurrence.verify(message.occurrence); + var error = $root.grafeas.v1.Occurrence.verify(message.occurrence, long + 1); if (error) return "occurrence." + error; } @@ -25213,16 +26701,20 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.CreateOccurrenceRequest} CreateOccurrenceRequest */ - CreateOccurrenceRequest.fromObject = function fromObject(object) { + CreateOccurrenceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.CreateOccurrenceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.CreateOccurrenceRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.occurrence != null) { if (typeof object.occurrence !== "object") throw TypeError(".grafeas.v1.CreateOccurrenceRequest.occurrence: object expected"); - message.occurrence = $root.grafeas.v1.Occurrence.fromObject(object.occurrence); + message.occurrence = $root.grafeas.v1.Occurrence.fromObject(object.occurrence, long + 1); } return message; }; @@ -25302,7 +26794,7 @@ function UpdateOccurrenceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25387,9 +26879,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateOccurrenceRequest.decode = function decode(reader, length, error) { + UpdateOccurrenceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.UpdateOccurrenceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25401,15 +26897,15 @@ break; } case 2: { - message.occurrence = $root.grafeas.v1.Occurrence.decode(reader, reader.uint32()); + message.occurrence = $root.grafeas.v1.Occurrence.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25440,19 +26936,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateOccurrenceRequest.verify = function verify(message) { + UpdateOccurrenceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.occurrence != null && message.hasOwnProperty("occurrence")) { - var error = $root.grafeas.v1.Occurrence.verify(message.occurrence); + var error = $root.grafeas.v1.Occurrence.verify(message.occurrence, long + 1); if (error) return "occurrence." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -25467,21 +26967,25 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.UpdateOccurrenceRequest} UpdateOccurrenceRequest */ - UpdateOccurrenceRequest.fromObject = function fromObject(object) { + UpdateOccurrenceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.UpdateOccurrenceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.UpdateOccurrenceRequest(); if (object.name != null) message.name = String(object.name); if (object.occurrence != null) { if (typeof object.occurrence !== "object") throw TypeError(".grafeas.v1.UpdateOccurrenceRequest.occurrence: object expected"); - message.occurrence = $root.grafeas.v1.Occurrence.fromObject(object.occurrence); + message.occurrence = $root.grafeas.v1.Occurrence.fromObject(object.occurrence, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".grafeas.v1.UpdateOccurrenceRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -25562,7 +27066,7 @@ function GetNoteRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25627,9 +27131,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetNoteRequest.decode = function decode(reader, length, error) { + GetNoteRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.GetNoteRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25641,7 +27149,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25672,9 +27180,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetNoteRequest.verify = function verify(message) { + GetNoteRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -25689,9 +27201,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.GetNoteRequest} GetNoteRequest */ - GetNoteRequest.fromObject = function fromObject(object) { + GetNoteRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.GetNoteRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.GetNoteRequest(); if (object.name != null) message.name = String(object.name); @@ -25767,7 +27283,7 @@ function GetOccurrenceNoteRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25832,9 +27348,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetOccurrenceNoteRequest.decode = function decode(reader, length, error) { + GetOccurrenceNoteRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.GetOccurrenceNoteRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25846,7 +27366,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25877,9 +27397,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetOccurrenceNoteRequest.verify = function verify(message) { + GetOccurrenceNoteRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -25894,9 +27418,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.GetOccurrenceNoteRequest} GetOccurrenceNoteRequest */ - GetOccurrenceNoteRequest.fromObject = function fromObject(object) { + GetOccurrenceNoteRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.GetOccurrenceNoteRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.GetOccurrenceNoteRequest(); if (object.name != null) message.name = String(object.name); @@ -25962,6 +27490,7 @@ * @property {string|null} [filter] ListNotesRequest filter * @property {number|null} [pageSize] ListNotesRequest pageSize * @property {string|null} [pageToken] ListNotesRequest pageToken + * @property {boolean|null} [returnPartialSuccess] ListNotesRequest returnPartialSuccess */ /** @@ -25975,7 +27504,7 @@ function ListNotesRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26011,6 +27540,14 @@ */ ListNotesRequest.prototype.pageToken = ""; + /** + * ListNotesRequest returnPartialSuccess. + * @member {boolean} returnPartialSuccess + * @memberof grafeas.v1.ListNotesRequest + * @instance + */ + ListNotesRequest.prototype.returnPartialSuccess = false; + /** * Creates a new ListNotesRequest instance using the specified properties. * @function create @@ -26043,6 +27580,8 @@ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.pageSize); if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) writer.uint32(/* id 4, wireType 2 =*/34).string(message.pageToken); + if (message.returnPartialSuccess != null && Object.hasOwnProperty.call(message, "returnPartialSuccess")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.returnPartialSuccess); return writer; }; @@ -26070,9 +27609,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListNotesRequest.decode = function decode(reader, length, error) { + ListNotesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ListNotesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26095,8 +27638,12 @@ message.pageToken = reader.string(); break; } + case 5: { + message.returnPartialSuccess = reader.bool(); + break; + } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26127,9 +27674,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListNotesRequest.verify = function verify(message) { + ListNotesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -26142,6 +27693,9 @@ if (message.pageToken != null && message.hasOwnProperty("pageToken")) if (!$util.isString(message.pageToken)) return "pageToken: string expected"; + if (message.returnPartialSuccess != null && message.hasOwnProperty("returnPartialSuccess")) + if (typeof message.returnPartialSuccess !== "boolean") + return "returnPartialSuccess: boolean expected"; return null; }; @@ -26153,9 +27707,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ListNotesRequest} ListNotesRequest */ - ListNotesRequest.fromObject = function fromObject(object) { + ListNotesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ListNotesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ListNotesRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -26165,6 +27723,8 @@ message.pageSize = object.pageSize | 0; if (object.pageToken != null) message.pageToken = String(object.pageToken); + if (object.returnPartialSuccess != null) + message.returnPartialSuccess = Boolean(object.returnPartialSuccess); return message; }; @@ -26186,6 +27746,7 @@ object.filter = ""; object.pageSize = 0; object.pageToken = ""; + object.returnPartialSuccess = false; } if (message.parent != null && message.hasOwnProperty("parent")) object.parent = message.parent; @@ -26195,6 +27756,8 @@ object.pageSize = message.pageSize; if (message.pageToken != null && message.hasOwnProperty("pageToken")) object.pageToken = message.pageToken; + if (message.returnPartialSuccess != null && message.hasOwnProperty("returnPartialSuccess")) + object.returnPartialSuccess = message.returnPartialSuccess; return object; }; @@ -26235,6 +27798,7 @@ * @interface IListNotesResponse * @property {Array.|null} [notes] ListNotesResponse notes * @property {string|null} [nextPageToken] ListNotesResponse nextPageToken + * @property {Array.|null} [unreachable] ListNotesResponse unreachable */ /** @@ -26247,9 +27811,10 @@ */ function ListNotesResponse(properties) { this.notes = []; + this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26269,6 +27834,14 @@ */ ListNotesResponse.prototype.nextPageToken = ""; + /** + * ListNotesResponse unreachable. + * @member {Array.} unreachable + * @memberof grafeas.v1.ListNotesResponse + * @instance + */ + ListNotesResponse.prototype.unreachable = $util.emptyArray; + /** * Creates a new ListNotesResponse instance using the specified properties. * @function create @@ -26298,6 +27871,9 @@ $root.grafeas.v1.Note.encode(message.notes[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + if (message.unreachable != null && message.unreachable.length) + for (var i = 0; i < message.unreachable.length; ++i) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.unreachable[i]); return writer; }; @@ -26325,9 +27901,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListNotesResponse.decode = function decode(reader, length, error) { + ListNotesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ListNotesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26337,15 +27917,21 @@ case 1: { if (!(message.notes && message.notes.length)) message.notes = []; - message.notes.push($root.grafeas.v1.Note.decode(reader, reader.uint32())); + message.notes.push($root.grafeas.v1.Note.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { message.nextPageToken = reader.string(); break; } + case 3: { + if (!(message.unreachable && message.unreachable.length)) + message.unreachable = []; + message.unreachable.push(reader.string()); + break; + } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26376,14 +27962,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListNotesResponse.verify = function verify(message) { + ListNotesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.notes != null && message.hasOwnProperty("notes")) { if (!Array.isArray(message.notes)) return "notes: array expected"; for (var i = 0; i < message.notes.length; ++i) { - var error = $root.grafeas.v1.Note.verify(message.notes[i]); + var error = $root.grafeas.v1.Note.verify(message.notes[i], long + 1); if (error) return "notes." + error; } @@ -26391,6 +27981,13 @@ if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) if (!$util.isString(message.nextPageToken)) return "nextPageToken: string expected"; + if (message.unreachable != null && message.hasOwnProperty("unreachable")) { + if (!Array.isArray(message.unreachable)) + return "unreachable: array expected"; + for (var i = 0; i < message.unreachable.length; ++i) + if (!$util.isString(message.unreachable[i])) + return "unreachable: string[] expected"; + } return null; }; @@ -26402,9 +27999,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ListNotesResponse} ListNotesResponse */ - ListNotesResponse.fromObject = function fromObject(object) { + ListNotesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ListNotesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ListNotesResponse(); if (object.notes) { if (!Array.isArray(object.notes)) @@ -26413,11 +28014,18 @@ for (var i = 0; i < object.notes.length; ++i) { if (typeof object.notes[i] !== "object") throw TypeError(".grafeas.v1.ListNotesResponse.notes: object expected"); - message.notes[i] = $root.grafeas.v1.Note.fromObject(object.notes[i]); + message.notes[i] = $root.grafeas.v1.Note.fromObject(object.notes[i], long + 1); } } if (object.nextPageToken != null) message.nextPageToken = String(object.nextPageToken); + if (object.unreachable) { + if (!Array.isArray(object.unreachable)) + throw TypeError(".grafeas.v1.ListNotesResponse.unreachable: array expected"); + message.unreachable = []; + for (var i = 0; i < object.unreachable.length; ++i) + message.unreachable[i] = String(object.unreachable[i]); + } return message; }; @@ -26434,8 +28042,10 @@ if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) + if (options.arrays || options.defaults) { object.notes = []; + object.unreachable = []; + } if (options.defaults) object.nextPageToken = ""; if (message.notes && message.notes.length) { @@ -26445,6 +28055,11 @@ } if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) object.nextPageToken = message.nextPageToken; + if (message.unreachable && message.unreachable.length) { + object.unreachable = []; + for (var j = 0; j < message.unreachable.length; ++j) + object.unreachable[j] = message.unreachable[j]; + } return object; }; @@ -26497,7 +28112,7 @@ function DeleteNoteRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26562,9 +28177,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteNoteRequest.decode = function decode(reader, length, error) { + DeleteNoteRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DeleteNoteRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26576,7 +28195,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26607,9 +28226,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteNoteRequest.verify = function verify(message) { + DeleteNoteRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -26624,9 +28247,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.DeleteNoteRequest} DeleteNoteRequest */ - DeleteNoteRequest.fromObject = function fromObject(object) { + DeleteNoteRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.DeleteNoteRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.DeleteNoteRequest(); if (object.name != null) message.name = String(object.name); @@ -26704,7 +28331,7 @@ function CreateNoteRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26789,9 +28416,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateNoteRequest.decode = function decode(reader, length, error) { + CreateNoteRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.CreateNoteRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26807,11 +28438,11 @@ break; } case 3: { - message.note = $root.grafeas.v1.Note.decode(reader, reader.uint32()); + message.note = $root.grafeas.v1.Note.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26842,9 +28473,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateNoteRequest.verify = function verify(message) { + CreateNoteRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -26852,7 +28487,7 @@ if (!$util.isString(message.noteId)) return "noteId: string expected"; if (message.note != null && message.hasOwnProperty("note")) { - var error = $root.grafeas.v1.Note.verify(message.note); + var error = $root.grafeas.v1.Note.verify(message.note, long + 1); if (error) return "note." + error; } @@ -26867,9 +28502,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.CreateNoteRequest} CreateNoteRequest */ - CreateNoteRequest.fromObject = function fromObject(object) { + CreateNoteRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.CreateNoteRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.CreateNoteRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -26878,7 +28517,7 @@ if (object.note != null) { if (typeof object.note !== "object") throw TypeError(".grafeas.v1.CreateNoteRequest.note: object expected"); - message.note = $root.grafeas.v1.Note.fromObject(object.note); + message.note = $root.grafeas.v1.Note.fromObject(object.note, long + 1); } return message; }; @@ -26961,7 +28600,7 @@ function UpdateNoteRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27046,9 +28685,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateNoteRequest.decode = function decode(reader, length, error) { + UpdateNoteRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.UpdateNoteRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27060,15 +28703,15 @@ break; } case 2: { - message.note = $root.grafeas.v1.Note.decode(reader, reader.uint32()); + message.note = $root.grafeas.v1.Note.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27099,19 +28742,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateNoteRequest.verify = function verify(message) { + UpdateNoteRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.note != null && message.hasOwnProperty("note")) { - var error = $root.grafeas.v1.Note.verify(message.note); + var error = $root.grafeas.v1.Note.verify(message.note, long + 1); if (error) return "note." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -27126,21 +28773,25 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.UpdateNoteRequest} UpdateNoteRequest */ - UpdateNoteRequest.fromObject = function fromObject(object) { + UpdateNoteRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.UpdateNoteRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.UpdateNoteRequest(); if (object.name != null) message.name = String(object.name); if (object.note != null) { if (typeof object.note !== "object") throw TypeError(".grafeas.v1.UpdateNoteRequest.note: object expected"); - message.note = $root.grafeas.v1.Note.fromObject(object.note); + message.note = $root.grafeas.v1.Note.fromObject(object.note, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".grafeas.v1.UpdateNoteRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -27224,7 +28875,7 @@ function ListNoteOccurrencesRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27319,9 +28970,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListNoteOccurrencesRequest.decode = function decode(reader, length, error) { + ListNoteOccurrencesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ListNoteOccurrencesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27345,7 +29000,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27376,9 +29031,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListNoteOccurrencesRequest.verify = function verify(message) { + ListNoteOccurrencesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -27402,9 +29061,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ListNoteOccurrencesRequest} ListNoteOccurrencesRequest */ - ListNoteOccurrencesRequest.fromObject = function fromObject(object) { + ListNoteOccurrencesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ListNoteOccurrencesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ListNoteOccurrencesRequest(); if (object.name != null) message.name = String(object.name); @@ -27498,7 +29161,7 @@ this.occurrences = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27574,9 +29237,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListNoteOccurrencesResponse.decode = function decode(reader, length, error) { + ListNoteOccurrencesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ListNoteOccurrencesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27586,7 +29253,7 @@ case 1: { if (!(message.occurrences && message.occurrences.length)) message.occurrences = []; - message.occurrences.push($root.grafeas.v1.Occurrence.decode(reader, reader.uint32())); + message.occurrences.push($root.grafeas.v1.Occurrence.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -27594,7 +29261,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27625,14 +29292,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListNoteOccurrencesResponse.verify = function verify(message) { + ListNoteOccurrencesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.occurrences != null && message.hasOwnProperty("occurrences")) { if (!Array.isArray(message.occurrences)) return "occurrences: array expected"; for (var i = 0; i < message.occurrences.length; ++i) { - var error = $root.grafeas.v1.Occurrence.verify(message.occurrences[i]); + var error = $root.grafeas.v1.Occurrence.verify(message.occurrences[i], long + 1); if (error) return "occurrences." + error; } @@ -27651,9 +29322,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ListNoteOccurrencesResponse} ListNoteOccurrencesResponse */ - ListNoteOccurrencesResponse.fromObject = function fromObject(object) { + ListNoteOccurrencesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ListNoteOccurrencesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ListNoteOccurrencesResponse(); if (object.occurrences) { if (!Array.isArray(object.occurrences)) @@ -27662,7 +29337,7 @@ for (var i = 0; i < object.occurrences.length; ++i) { if (typeof object.occurrences[i] !== "object") throw TypeError(".grafeas.v1.ListNoteOccurrencesResponse.occurrences: object expected"); - message.occurrences[i] = $root.grafeas.v1.Occurrence.fromObject(object.occurrences[i]); + message.occurrences[i] = $root.grafeas.v1.Occurrence.fromObject(object.occurrences[i], long + 1); } } if (object.nextPageToken != null) @@ -27748,7 +29423,7 @@ this.notes = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27826,9 +29501,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchCreateNotesRequest.decode = function decode(reader, length, error) { + BatchCreateNotesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.BatchCreateNotesRequest(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -27852,18 +29531,20 @@ key = reader.string(); break; case 2: - value = $root.grafeas.v1.Note.decode(reader, reader.uint32()); + value = $root.grafeas.v1.Note.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.notes, key); message.notes[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27894,9 +29575,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchCreateNotesRequest.verify = function verify(message) { + BatchCreateNotesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -27905,7 +29590,7 @@ return "notes: object expected"; var key = Object.keys(message.notes); for (var i = 0; i < key.length; ++i) { - var error = $root.grafeas.v1.Note.verify(message.notes[key[i]]); + var error = $root.grafeas.v1.Note.verify(message.notes[key[i]], long + 1); if (error) return "notes." + error; } @@ -27921,9 +29606,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.BatchCreateNotesRequest} BatchCreateNotesRequest */ - BatchCreateNotesRequest.fromObject = function fromObject(object) { + BatchCreateNotesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.BatchCreateNotesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.BatchCreateNotesRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -27932,9 +29621,11 @@ throw TypeError(".grafeas.v1.BatchCreateNotesRequest.notes: object expected"); message.notes = {}; for (var keys = Object.keys(object.notes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.notes, keys[i]); if (typeof object.notes[keys[i]] !== "object") throw TypeError(".grafeas.v1.BatchCreateNotesRequest.notes: object expected"); - message.notes[keys[i]] = $root.grafeas.v1.Note.fromObject(object.notes[keys[i]]); + message.notes[keys[i]] = $root.grafeas.v1.Note.fromObject(object.notes[keys[i]], long + 1); } } return message; @@ -27962,8 +29653,11 @@ var keys2; if (message.notes && (keys2 = Object.keys(message.notes)).length) { object.notes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.notes, keys2[j]); object.notes[keys2[j]] = $root.grafeas.v1.Note.toObject(message.notes[keys2[j]], options); + } } return object; }; @@ -28018,7 +29712,7 @@ this.notes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28084,9 +29778,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchCreateNotesResponse.decode = function decode(reader, length, error) { + BatchCreateNotesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.BatchCreateNotesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28096,11 +29794,11 @@ case 1: { if (!(message.notes && message.notes.length)) message.notes = []; - message.notes.push($root.grafeas.v1.Note.decode(reader, reader.uint32())); + message.notes.push($root.grafeas.v1.Note.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28131,14 +29829,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchCreateNotesResponse.verify = function verify(message) { + BatchCreateNotesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.notes != null && message.hasOwnProperty("notes")) { if (!Array.isArray(message.notes)) return "notes: array expected"; for (var i = 0; i < message.notes.length; ++i) { - var error = $root.grafeas.v1.Note.verify(message.notes[i]); + var error = $root.grafeas.v1.Note.verify(message.notes[i], long + 1); if (error) return "notes." + error; } @@ -28154,9 +29856,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.BatchCreateNotesResponse} BatchCreateNotesResponse */ - BatchCreateNotesResponse.fromObject = function fromObject(object) { + BatchCreateNotesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.BatchCreateNotesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.BatchCreateNotesResponse(); if (object.notes) { if (!Array.isArray(object.notes)) @@ -28165,7 +29871,7 @@ for (var i = 0; i < object.notes.length; ++i) { if (typeof object.notes[i] !== "object") throw TypeError(".grafeas.v1.BatchCreateNotesResponse.notes: object expected"); - message.notes[i] = $root.grafeas.v1.Note.fromObject(object.notes[i]); + message.notes[i] = $root.grafeas.v1.Note.fromObject(object.notes[i], long + 1); } } return message; @@ -28245,7 +29951,7 @@ this.occurrences = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28321,9 +30027,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchCreateOccurrencesRequest.decode = function decode(reader, length, error) { + BatchCreateOccurrencesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.BatchCreateOccurrencesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28337,11 +30047,11 @@ case 2: { if (!(message.occurrences && message.occurrences.length)) message.occurrences = []; - message.occurrences.push($root.grafeas.v1.Occurrence.decode(reader, reader.uint32())); + message.occurrences.push($root.grafeas.v1.Occurrence.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28372,9 +30082,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchCreateOccurrencesRequest.verify = function verify(message) { + BatchCreateOccurrencesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -28382,7 +30096,7 @@ if (!Array.isArray(message.occurrences)) return "occurrences: array expected"; for (var i = 0; i < message.occurrences.length; ++i) { - var error = $root.grafeas.v1.Occurrence.verify(message.occurrences[i]); + var error = $root.grafeas.v1.Occurrence.verify(message.occurrences[i], long + 1); if (error) return "occurrences." + error; } @@ -28398,9 +30112,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.BatchCreateOccurrencesRequest} BatchCreateOccurrencesRequest */ - BatchCreateOccurrencesRequest.fromObject = function fromObject(object) { + BatchCreateOccurrencesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.BatchCreateOccurrencesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.BatchCreateOccurrencesRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -28411,7 +30129,7 @@ for (var i = 0; i < object.occurrences.length; ++i) { if (typeof object.occurrences[i] !== "object") throw TypeError(".grafeas.v1.BatchCreateOccurrencesRequest.occurrences: object expected"); - message.occurrences[i] = $root.grafeas.v1.Occurrence.fromObject(object.occurrences[i]); + message.occurrences[i] = $root.grafeas.v1.Occurrence.fromObject(object.occurrences[i], long + 1); } } return message; @@ -28494,7 +30212,7 @@ this.occurrences = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28560,9 +30278,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchCreateOccurrencesResponse.decode = function decode(reader, length, error) { + BatchCreateOccurrencesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.BatchCreateOccurrencesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28572,11 +30294,11 @@ case 1: { if (!(message.occurrences && message.occurrences.length)) message.occurrences = []; - message.occurrences.push($root.grafeas.v1.Occurrence.decode(reader, reader.uint32())); + message.occurrences.push($root.grafeas.v1.Occurrence.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28607,14 +30329,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchCreateOccurrencesResponse.verify = function verify(message) { + BatchCreateOccurrencesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.occurrences != null && message.hasOwnProperty("occurrences")) { if (!Array.isArray(message.occurrences)) return "occurrences: array expected"; for (var i = 0; i < message.occurrences.length; ++i) { - var error = $root.grafeas.v1.Occurrence.verify(message.occurrences[i]); + var error = $root.grafeas.v1.Occurrence.verify(message.occurrences[i], long + 1); if (error) return "occurrences." + error; } @@ -28630,9 +30356,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.BatchCreateOccurrencesResponse} BatchCreateOccurrencesResponse */ - BatchCreateOccurrencesResponse.fromObject = function fromObject(object) { + BatchCreateOccurrencesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.BatchCreateOccurrencesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.BatchCreateOccurrencesResponse(); if (object.occurrences) { if (!Array.isArray(object.occurrences)) @@ -28641,7 +30371,7 @@ for (var i = 0; i < object.occurrences.length; ++i) { if (typeof object.occurrences[i] !== "object") throw TypeError(".grafeas.v1.BatchCreateOccurrencesResponse.occurrences: object expected"); - message.occurrences[i] = $root.grafeas.v1.Occurrence.fromObject(object.occurrences[i]); + message.occurrences[i] = $root.grafeas.v1.Occurrence.fromObject(object.occurrences[i], long + 1); } } return message; @@ -28720,7 +30450,7 @@ function Layer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28795,9 +30525,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Layer.decode = function decode(reader, length, error) { + Layer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Layer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28813,7 +30547,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28844,9 +30578,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Layer.verify = function verify(message) { + Layer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.directive != null && message.hasOwnProperty("directive")) if (!$util.isString(message.directive)) return "directive: string expected"; @@ -28864,9 +30602,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Layer} Layer */ - Layer.fromObject = function fromObject(object) { + Layer.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Layer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Layer(); if (object.directive != null) message.directive = String(object.directive); @@ -28951,7 +30693,7 @@ this.v2Blob = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29037,9 +30779,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Fingerprint.decode = function decode(reader, length, error) { + Fingerprint.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Fingerprint(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29061,7 +30807,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29092,9 +30838,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Fingerprint.verify = function verify(message) { + Fingerprint.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.v1Name != null && message.hasOwnProperty("v1Name")) if (!$util.isString(message.v1Name)) return "v1Name: string expected"; @@ -29119,9 +30869,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Fingerprint} Fingerprint */ - Fingerprint.fromObject = function fromObject(object) { + Fingerprint.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Fingerprint) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Fingerprint(); if (object.v1Name != null) message.v1Name = String(object.v1Name); @@ -29218,7 +30972,7 @@ function ImageNote(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29293,9 +31047,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImageNote.decode = function decode(reader, length, error) { + ImageNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ImageNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29307,11 +31065,11 @@ break; } case 2: { - message.fingerprint = $root.grafeas.v1.Fingerprint.decode(reader, reader.uint32()); + message.fingerprint = $root.grafeas.v1.Fingerprint.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29342,14 +31100,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImageNote.verify = function verify(message) { + ImageNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.resourceUrl != null && message.hasOwnProperty("resourceUrl")) if (!$util.isString(message.resourceUrl)) return "resourceUrl: string expected"; if (message.fingerprint != null && message.hasOwnProperty("fingerprint")) { - var error = $root.grafeas.v1.Fingerprint.verify(message.fingerprint); + var error = $root.grafeas.v1.Fingerprint.verify(message.fingerprint, long + 1); if (error) return "fingerprint." + error; } @@ -29364,16 +31126,20 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ImageNote} ImageNote */ - ImageNote.fromObject = function fromObject(object) { + ImageNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ImageNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ImageNote(); if (object.resourceUrl != null) message.resourceUrl = String(object.resourceUrl); if (object.fingerprint != null) { if (typeof object.fingerprint !== "object") throw TypeError(".grafeas.v1.ImageNote.fingerprint: object expected"); - message.fingerprint = $root.grafeas.v1.Fingerprint.fromObject(object.fingerprint); + message.fingerprint = $root.grafeas.v1.Fingerprint.fromObject(object.fingerprint, long + 1); } return message; }; @@ -29455,7 +31221,7 @@ this.layerInfo = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29551,9 +31317,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImageOccurrence.decode = function decode(reader, length, error) { + ImageOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ImageOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29561,7 +31331,7 @@ break; switch (tag >>> 3) { case 1: { - message.fingerprint = $root.grafeas.v1.Fingerprint.decode(reader, reader.uint32()); + message.fingerprint = $root.grafeas.v1.Fingerprint.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -29571,7 +31341,7 @@ case 3: { if (!(message.layerInfo && message.layerInfo.length)) message.layerInfo = []; - message.layerInfo.push($root.grafeas.v1.Layer.decode(reader, reader.uint32())); + message.layerInfo.push($root.grafeas.v1.Layer.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -29579,7 +31349,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29610,11 +31380,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImageOccurrence.verify = function verify(message) { + ImageOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fingerprint != null && message.hasOwnProperty("fingerprint")) { - var error = $root.grafeas.v1.Fingerprint.verify(message.fingerprint); + var error = $root.grafeas.v1.Fingerprint.verify(message.fingerprint, long + 1); if (error) return "fingerprint." + error; } @@ -29625,7 +31399,7 @@ if (!Array.isArray(message.layerInfo)) return "layerInfo: array expected"; for (var i = 0; i < message.layerInfo.length; ++i) { - var error = $root.grafeas.v1.Layer.verify(message.layerInfo[i]); + var error = $root.grafeas.v1.Layer.verify(message.layerInfo[i], long + 1); if (error) return "layerInfo." + error; } @@ -29644,14 +31418,18 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.ImageOccurrence} ImageOccurrence */ - ImageOccurrence.fromObject = function fromObject(object) { + ImageOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.ImageOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.ImageOccurrence(); if (object.fingerprint != null) { if (typeof object.fingerprint !== "object") throw TypeError(".grafeas.v1.ImageOccurrence.fingerprint: object expected"); - message.fingerprint = $root.grafeas.v1.Fingerprint.fromObject(object.fingerprint); + message.fingerprint = $root.grafeas.v1.Fingerprint.fromObject(object.fingerprint, long + 1); } if (object.distance != null) message.distance = object.distance | 0; @@ -29662,7 +31440,7 @@ for (var i = 0; i < object.layerInfo.length; ++i) { if (typeof object.layerInfo[i] !== "object") throw TypeError(".grafeas.v1.ImageOccurrence.layerInfo: object expected"); - message.layerInfo[i] = $root.grafeas.v1.Layer.fromObject(object.layerInfo[i]); + message.layerInfo[i] = $root.grafeas.v1.Layer.fromObject(object.layerInfo[i], long + 1); } } if (object.baseResourceUrl != null) @@ -29774,7 +31552,7 @@ function Distribution(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29889,9 +31667,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Distribution.decode = function decode(reader, length, error) { + Distribution.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Distribution(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29907,7 +31689,7 @@ break; } case 3: { - message.latestVersion = $root.grafeas.v1.Version.decode(reader, reader.uint32()); + message.latestVersion = $root.grafeas.v1.Version.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -29923,7 +31705,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29954,9 +31736,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Distribution.verify = function verify(message) { + Distribution.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.cpeUri != null && message.hasOwnProperty("cpeUri")) if (!$util.isString(message.cpeUri)) return "cpeUri: string expected"; @@ -29970,7 +31756,7 @@ break; } if (message.latestVersion != null && message.hasOwnProperty("latestVersion")) { - var error = $root.grafeas.v1.Version.verify(message.latestVersion); + var error = $root.grafeas.v1.Version.verify(message.latestVersion, long + 1); if (error) return "latestVersion." + error; } @@ -29994,9 +31780,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Distribution} Distribution */ - Distribution.fromObject = function fromObject(object) { + Distribution.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Distribution) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Distribution(); if (object.cpeUri != null) message.cpeUri = String(object.cpeUri); @@ -30023,7 +31813,7 @@ if (object.latestVersion != null) { if (typeof object.latestVersion !== "object") throw TypeError(".grafeas.v1.Distribution.latestVersion: object expected"); - message.latestVersion = $root.grafeas.v1.Version.fromObject(object.latestVersion); + message.latestVersion = $root.grafeas.v1.Version.fromObject(object.latestVersion, long + 1); } if (object.maintainer != null) message.maintainer = String(object.maintainer); @@ -30121,7 +31911,7 @@ function Location(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30206,9 +31996,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Location.decode = function decode(reader, length, error) { + Location.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Location(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30220,7 +32014,7 @@ break; } case 2: { - message.version = $root.grafeas.v1.Version.decode(reader, reader.uint32()); + message.version = $root.grafeas.v1.Version.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -30228,7 +32022,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30259,14 +32053,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Location.verify = function verify(message) { + Location.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.cpeUri != null && message.hasOwnProperty("cpeUri")) if (!$util.isString(message.cpeUri)) return "cpeUri: string expected"; if (message.version != null && message.hasOwnProperty("version")) { - var error = $root.grafeas.v1.Version.verify(message.version); + var error = $root.grafeas.v1.Version.verify(message.version, long + 1); if (error) return "version." + error; } @@ -30284,16 +32082,20 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Location} Location */ - Location.fromObject = function fromObject(object) { + Location.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Location) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Location(); if (object.cpeUri != null) message.cpeUri = String(object.cpeUri); if (object.version != null) { if (typeof object.version !== "object") throw TypeError(".grafeas.v1.Location.version: object expected"); - message.version = $root.grafeas.v1.Version.fromObject(object.version); + message.version = $root.grafeas.v1.Version.fromObject(object.version, long + 1); } if (object.path != null) message.path = String(object.path); @@ -30388,7 +32190,7 @@ this.digest = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30555,9 +32357,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PackageNote.decode = function decode(reader, length, error) { + PackageNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.PackageNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30571,7 +32377,7 @@ case 10: { if (!(message.distribution && message.distribution.length)) message.distribution = []; - message.distribution.push($root.grafeas.v1.Distribution.decode(reader, reader.uint32())); + message.distribution.push($root.grafeas.v1.Distribution.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 11: { @@ -30587,7 +32393,7 @@ break; } case 14: { - message.version = $root.grafeas.v1.Version.decode(reader, reader.uint32()); + message.version = $root.grafeas.v1.Version.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { @@ -30603,17 +32409,17 @@ break; } case 18: { - message.license = $root.grafeas.v1.License.decode(reader, reader.uint32()); + message.license = $root.grafeas.v1.License.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { if (!(message.digest && message.digest.length)) message.digest = []; - message.digest.push($root.grafeas.v1.Digest.decode(reader, reader.uint32())); + message.digest.push($root.grafeas.v1.Digest.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30644,9 +32450,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PackageNote.verify = function verify(message) { + PackageNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -30654,7 +32464,7 @@ if (!Array.isArray(message.distribution)) return "distribution: array expected"; for (var i = 0; i < message.distribution.length; ++i) { - var error = $root.grafeas.v1.Distribution.verify(message.distribution[i]); + var error = $root.grafeas.v1.Distribution.verify(message.distribution[i], long + 1); if (error) return "distribution." + error; } @@ -30675,7 +32485,7 @@ break; } if (message.version != null && message.hasOwnProperty("version")) { - var error = $root.grafeas.v1.Version.verify(message.version); + var error = $root.grafeas.v1.Version.verify(message.version, long + 1); if (error) return "version." + error; } @@ -30689,7 +32499,7 @@ if (!$util.isString(message.description)) return "description: string expected"; if (message.license != null && message.hasOwnProperty("license")) { - var error = $root.grafeas.v1.License.verify(message.license); + var error = $root.grafeas.v1.License.verify(message.license, long + 1); if (error) return "license." + error; } @@ -30697,7 +32507,7 @@ if (!Array.isArray(message.digest)) return "digest: array expected"; for (var i = 0; i < message.digest.length; ++i) { - var error = $root.grafeas.v1.Digest.verify(message.digest[i]); + var error = $root.grafeas.v1.Digest.verify(message.digest[i], long + 1); if (error) return "digest." + error; } @@ -30713,9 +32523,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.PackageNote} PackageNote */ - PackageNote.fromObject = function fromObject(object) { + PackageNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.PackageNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.PackageNote(); if (object.name != null) message.name = String(object.name); @@ -30726,7 +32540,7 @@ for (var i = 0; i < object.distribution.length; ++i) { if (typeof object.distribution[i] !== "object") throw TypeError(".grafeas.v1.PackageNote.distribution: object expected"); - message.distribution[i] = $root.grafeas.v1.Distribution.fromObject(object.distribution[i]); + message.distribution[i] = $root.grafeas.v1.Distribution.fromObject(object.distribution[i], long + 1); } } if (object.packageType != null) @@ -30756,7 +32570,7 @@ if (object.version != null) { if (typeof object.version !== "object") throw TypeError(".grafeas.v1.PackageNote.version: object expected"); - message.version = $root.grafeas.v1.Version.fromObject(object.version); + message.version = $root.grafeas.v1.Version.fromObject(object.version, long + 1); } if (object.maintainer != null) message.maintainer = String(object.maintainer); @@ -30767,7 +32581,7 @@ if (object.license != null) { if (typeof object.license !== "object") throw TypeError(".grafeas.v1.PackageNote.license: object expected"); - message.license = $root.grafeas.v1.License.fromObject(object.license); + message.license = $root.grafeas.v1.License.fromObject(object.license, long + 1); } if (object.digest) { if (!Array.isArray(object.digest)) @@ -30776,7 +32590,7 @@ for (var i = 0; i < object.digest.length; ++i) { if (typeof object.digest[i] !== "object") throw TypeError(".grafeas.v1.PackageNote.digest: object expected"); - message.digest[i] = $root.grafeas.v1.Digest.fromObject(object.digest[i]); + message.digest[i] = $root.grafeas.v1.Digest.fromObject(object.digest[i], long + 1); } } return message; @@ -30897,7 +32711,7 @@ this.location = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31023,9 +32837,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PackageOccurrence.decode = function decode(reader, length, error) { + PackageOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.PackageOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31039,7 +32857,7 @@ case 2: { if (!(message.location && message.location.length)) message.location = []; - message.location.push($root.grafeas.v1.Location.decode(reader, reader.uint32())); + message.location.push($root.grafeas.v1.Location.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -31055,15 +32873,15 @@ break; } case 6: { - message.license = $root.grafeas.v1.License.decode(reader, reader.uint32()); + message.license = $root.grafeas.v1.License.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.version = $root.grafeas.v1.Version.decode(reader, reader.uint32()); + message.version = $root.grafeas.v1.Version.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31094,9 +32912,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PackageOccurrence.verify = function verify(message) { + PackageOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -31104,7 +32926,7 @@ if (!Array.isArray(message.location)) return "location: array expected"; for (var i = 0; i < message.location.length; ++i) { - var error = $root.grafeas.v1.Location.verify(message.location[i]); + var error = $root.grafeas.v1.Location.verify(message.location[i], long + 1); if (error) return "location." + error; } @@ -31125,12 +32947,12 @@ break; } if (message.license != null && message.hasOwnProperty("license")) { - var error = $root.grafeas.v1.License.verify(message.license); + var error = $root.grafeas.v1.License.verify(message.license, long + 1); if (error) return "license." + error; } if (message.version != null && message.hasOwnProperty("version")) { - var error = $root.grafeas.v1.Version.verify(message.version); + var error = $root.grafeas.v1.Version.verify(message.version, long + 1); if (error) return "version." + error; } @@ -31145,9 +32967,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.PackageOccurrence} PackageOccurrence */ - PackageOccurrence.fromObject = function fromObject(object) { + PackageOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.PackageOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.PackageOccurrence(); if (object.name != null) message.name = String(object.name); @@ -31158,7 +32984,7 @@ for (var i = 0; i < object.location.length; ++i) { if (typeof object.location[i] !== "object") throw TypeError(".grafeas.v1.PackageOccurrence.location: object expected"); - message.location[i] = $root.grafeas.v1.Location.fromObject(object.location[i]); + message.location[i] = $root.grafeas.v1.Location.fromObject(object.location[i], long + 1); } } if (object.packageType != null) @@ -31188,12 +33014,12 @@ if (object.license != null) { if (typeof object.license !== "object") throw TypeError(".grafeas.v1.PackageOccurrence.license: object expected"); - message.license = $root.grafeas.v1.License.fromObject(object.license); + message.license = $root.grafeas.v1.License.fromObject(object.license, long + 1); } if (object.version != null) { if (typeof object.version !== "object") throw TypeError(".grafeas.v1.PackageOccurrence.version: object expected"); - message.version = $root.grafeas.v1.Version.fromObject(object.version); + message.version = $root.grafeas.v1.Version.fromObject(object.version, long + 1); } return message; }; @@ -31295,7 +33121,7 @@ function Version(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31410,9 +33236,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Version.decode = function decode(reader, length, error) { + Version.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Version(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31444,7 +33274,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31475,9 +33305,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Version.verify = function verify(message) { + Version.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.epoch != null && message.hasOwnProperty("epoch")) if (!$util.isInteger(message.epoch)) return "epoch: integer expected"; @@ -31514,9 +33348,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.Version} Version */ - Version.fromObject = function fromObject(object) { + Version.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.Version) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.Version(); if (object.epoch != null) message.epoch = object.epoch | 0; @@ -31659,7 +33497,7 @@ function SBOMReferenceNote(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31734,9 +33572,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SBOMReferenceNote.decode = function decode(reader, length, error) { + SBOMReferenceNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SBOMReferenceNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31752,7 +33594,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31783,9 +33625,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SBOMReferenceNote.verify = function verify(message) { + SBOMReferenceNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.format != null && message.hasOwnProperty("format")) if (!$util.isString(message.format)) return "format: string expected"; @@ -31803,9 +33649,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SBOMReferenceNote} SBOMReferenceNote */ - SBOMReferenceNote.fromObject = function fromObject(object) { + SBOMReferenceNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SBOMReferenceNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SBOMReferenceNote(); if (object.format != null) message.format = String(object.format); @@ -31890,7 +33740,7 @@ this.signatures = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31976,9 +33826,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SBOMReferenceOccurrence.decode = function decode(reader, length, error) { + SBOMReferenceOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SBOMReferenceOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31986,7 +33840,7 @@ break; switch (tag >>> 3) { case 1: { - message.payload = $root.grafeas.v1.SbomReferenceIntotoPayload.decode(reader, reader.uint32()); + message.payload = $root.grafeas.v1.SbomReferenceIntotoPayload.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -31996,11 +33850,11 @@ case 3: { if (!(message.signatures && message.signatures.length)) message.signatures = []; - message.signatures.push($root.grafeas.v1.EnvelopeSignature.decode(reader, reader.uint32())); + message.signatures.push($root.grafeas.v1.EnvelopeSignature.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32031,11 +33885,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SBOMReferenceOccurrence.verify = function verify(message) { + SBOMReferenceOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.payload != null && message.hasOwnProperty("payload")) { - var error = $root.grafeas.v1.SbomReferenceIntotoPayload.verify(message.payload); + var error = $root.grafeas.v1.SbomReferenceIntotoPayload.verify(message.payload, long + 1); if (error) return "payload." + error; } @@ -32046,7 +33904,7 @@ if (!Array.isArray(message.signatures)) return "signatures: array expected"; for (var i = 0; i < message.signatures.length; ++i) { - var error = $root.grafeas.v1.EnvelopeSignature.verify(message.signatures[i]); + var error = $root.grafeas.v1.EnvelopeSignature.verify(message.signatures[i], long + 1); if (error) return "signatures." + error; } @@ -32062,14 +33920,18 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SBOMReferenceOccurrence} SBOMReferenceOccurrence */ - SBOMReferenceOccurrence.fromObject = function fromObject(object) { + SBOMReferenceOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SBOMReferenceOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SBOMReferenceOccurrence(); if (object.payload != null) { if (typeof object.payload !== "object") throw TypeError(".grafeas.v1.SBOMReferenceOccurrence.payload: object expected"); - message.payload = $root.grafeas.v1.SbomReferenceIntotoPayload.fromObject(object.payload); + message.payload = $root.grafeas.v1.SbomReferenceIntotoPayload.fromObject(object.payload, long + 1); } if (object.payloadType != null) message.payloadType = String(object.payloadType); @@ -32080,7 +33942,7 @@ for (var i = 0; i < object.signatures.length; ++i) { if (typeof object.signatures[i] !== "object") throw TypeError(".grafeas.v1.SBOMReferenceOccurrence.signatures: object expected"); - message.signatures[i] = $root.grafeas.v1.EnvelopeSignature.fromObject(object.signatures[i]); + message.signatures[i] = $root.grafeas.v1.EnvelopeSignature.fromObject(object.signatures[i], long + 1); } } return message; @@ -32170,7 +34032,7 @@ this.subject = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32266,9 +34128,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SbomReferenceIntotoPayload.decode = function decode(reader, length, error) { + SbomReferenceIntotoPayload.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SbomReferenceIntotoPayload(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32286,15 +34152,15 @@ case 3: { if (!(message.subject && message.subject.length)) message.subject = []; - message.subject.push($root.grafeas.v1.Subject.decode(reader, reader.uint32())); + message.subject.push($root.grafeas.v1.Subject.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { - message.predicate = $root.grafeas.v1.SbomReferenceIntotoPredicate.decode(reader, reader.uint32()); + message.predicate = $root.grafeas.v1.SbomReferenceIntotoPredicate.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32325,9 +34191,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SbomReferenceIntotoPayload.verify = function verify(message) { + SbomReferenceIntotoPayload.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -32338,13 +34208,13 @@ if (!Array.isArray(message.subject)) return "subject: array expected"; for (var i = 0; i < message.subject.length; ++i) { - var error = $root.grafeas.v1.Subject.verify(message.subject[i]); + var error = $root.grafeas.v1.Subject.verify(message.subject[i], long + 1); if (error) return "subject." + error; } } if (message.predicate != null && message.hasOwnProperty("predicate")) { - var error = $root.grafeas.v1.SbomReferenceIntotoPredicate.verify(message.predicate); + var error = $root.grafeas.v1.SbomReferenceIntotoPredicate.verify(message.predicate, long + 1); if (error) return "predicate." + error; } @@ -32359,9 +34229,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SbomReferenceIntotoPayload} SbomReferenceIntotoPayload */ - SbomReferenceIntotoPayload.fromObject = function fromObject(object) { + SbomReferenceIntotoPayload.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SbomReferenceIntotoPayload) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SbomReferenceIntotoPayload(); if (object.type != null) message.type = String(object.type); @@ -32374,13 +34248,13 @@ for (var i = 0; i < object.subject.length; ++i) { if (typeof object.subject[i] !== "object") throw TypeError(".grafeas.v1.SbomReferenceIntotoPayload.subject: object expected"); - message.subject[i] = $root.grafeas.v1.Subject.fromObject(object.subject[i]); + message.subject[i] = $root.grafeas.v1.Subject.fromObject(object.subject[i], long + 1); } } if (object.predicate != null) { if (typeof object.predicate !== "object") throw TypeError(".grafeas.v1.SbomReferenceIntotoPayload.predicate: object expected"); - message.predicate = $root.grafeas.v1.SbomReferenceIntotoPredicate.fromObject(object.predicate); + message.predicate = $root.grafeas.v1.SbomReferenceIntotoPredicate.fromObject(object.predicate, long + 1); } return message; }; @@ -32472,7 +34346,7 @@ this.digest = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32568,9 +34442,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SbomReferenceIntotoPredicate.decode = function decode(reader, length, error) { + SbomReferenceIntotoPredicate.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SbomReferenceIntotoPredicate(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -32605,15 +34483,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.digest, key); message.digest[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32644,9 +34524,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SbomReferenceIntotoPredicate.verify = function verify(message) { + SbomReferenceIntotoPredicate.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.referrerId != null && message.hasOwnProperty("referrerId")) if (!$util.isString(message.referrerId)) return "referrerId: string expected"; @@ -32675,9 +34559,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SbomReferenceIntotoPredicate} SbomReferenceIntotoPredicate */ - SbomReferenceIntotoPredicate.fromObject = function fromObject(object) { + SbomReferenceIntotoPredicate.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SbomReferenceIntotoPredicate) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SbomReferenceIntotoPredicate(); if (object.referrerId != null) message.referrerId = String(object.referrerId); @@ -32689,8 +34577,11 @@ if (typeof object.digest !== "object") throw TypeError(".grafeas.v1.SbomReferenceIntotoPredicate.digest: object expected"); message.digest = {}; - for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.digest, keys[i]); message.digest[keys[i]] = String(object.digest[keys[i]]); + } } return message; }; @@ -32724,8 +34615,11 @@ var keys2; if (message.digest && (keys2 = Object.keys(message.digest)).length) { object.digest = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.digest, keys2[j]); object.digest[keys2[j]] = message.digest[keys2[j]]; + } } return object; }; @@ -32778,7 +34672,7 @@ function SecretNote(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32833,9 +34727,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SecretNote.decode = function decode(reader, length, error) { + SecretNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SecretNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32843,7 +34741,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32874,9 +34772,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SecretNote.verify = function verify(message) { + SecretNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -32888,9 +34790,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SecretNote} SecretNote */ - SecretNote.fromObject = function fromObject(object) { + SecretNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SecretNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.grafeas.v1.SecretNote(); }; @@ -32945,6 +34851,8 @@ * @property {grafeas.v1.SecretKind|null} [kind] SecretOccurrence kind * @property {Array.|null} [locations] SecretOccurrence locations * @property {Array.|null} [statuses] SecretOccurrence statuses + * @property {google.protobuf.IAny|null} [data] SecretOccurrence data + * @property {grafeas.v1.IDigest|null} [digest] SecretOccurrence digest */ /** @@ -32960,7 +34868,7 @@ this.statuses = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32988,6 +34896,22 @@ */ SecretOccurrence.prototype.statuses = $util.emptyArray; + /** + * SecretOccurrence data. + * @member {google.protobuf.IAny|null|undefined} data + * @memberof grafeas.v1.SecretOccurrence + * @instance + */ + SecretOccurrence.prototype.data = null; + + /** + * SecretOccurrence digest. + * @member {grafeas.v1.IDigest|null|undefined} digest + * @memberof grafeas.v1.SecretOccurrence + * @instance + */ + SecretOccurrence.prototype.digest = null; + /** * Creates a new SecretOccurrence instance using the specified properties. * @function create @@ -33020,6 +34944,10 @@ if (message.statuses != null && message.statuses.length) for (var i = 0; i < message.statuses.length; ++i) $root.grafeas.v1.SecretStatus.encode(message.statuses[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.data != null && Object.hasOwnProperty.call(message, "data")) + $root.google.protobuf.Any.encode(message.data, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.digest != null && Object.hasOwnProperty.call(message, "digest")) + $root.grafeas.v1.Digest.encode(message.digest, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); return writer; }; @@ -33047,9 +34975,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SecretOccurrence.decode = function decode(reader, length, error) { + SecretOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SecretOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33063,17 +34995,25 @@ case 2: { if (!(message.locations && message.locations.length)) message.locations = []; - message.locations.push($root.grafeas.v1.SecretLocation.decode(reader, reader.uint32())); + message.locations.push($root.grafeas.v1.SecretLocation.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.statuses && message.statuses.length)) message.statuses = []; - message.statuses.push($root.grafeas.v1.SecretStatus.decode(reader, reader.uint32())); + message.statuses.push($root.grafeas.v1.SecretStatus.decode(reader, reader.uint32(), undefined, long + 1)); + break; + } + case 4: { + message.data = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); + break; + } + case 5: { + message.digest = $root.grafeas.v1.Digest.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33104,9 +35044,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SecretOccurrence.verify = function verify(message) { + SecretOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.kind != null && message.hasOwnProperty("kind")) switch (message.kind) { default: @@ -33114,13 +35058,33 @@ case 0: case 1: case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + case 10: + case 11: + case 12: + case 13: + case 14: + case 15: + case 16: + case 17: + case 18: + case 19: + case 20: + case 21: + case 22: break; } if (message.locations != null && message.hasOwnProperty("locations")) { if (!Array.isArray(message.locations)) return "locations: array expected"; for (var i = 0; i < message.locations.length; ++i) { - var error = $root.grafeas.v1.SecretLocation.verify(message.locations[i]); + var error = $root.grafeas.v1.SecretLocation.verify(message.locations[i], long + 1); if (error) return "locations." + error; } @@ -33129,11 +35093,21 @@ if (!Array.isArray(message.statuses)) return "statuses: array expected"; for (var i = 0; i < message.statuses.length; ++i) { - var error = $root.grafeas.v1.SecretStatus.verify(message.statuses[i]); + var error = $root.grafeas.v1.SecretStatus.verify(message.statuses[i], long + 1); if (error) return "statuses." + error; } } + if (message.data != null && message.hasOwnProperty("data")) { + var error = $root.google.protobuf.Any.verify(message.data, long + 1); + if (error) + return "data." + error; + } + if (message.digest != null && message.hasOwnProperty("digest")) { + var error = $root.grafeas.v1.Digest.verify(message.digest, long + 1); + if (error) + return "digest." + error; + } return null; }; @@ -33145,9 +35119,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SecretOccurrence} SecretOccurrence */ - SecretOccurrence.fromObject = function fromObject(object) { + SecretOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SecretOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SecretOccurrence(); switch (object.kind) { default: @@ -33168,6 +35146,86 @@ case 2: message.kind = 2; break; + case "SECRET_KIND_GCP_API_KEY": + case 3: + message.kind = 3; + break; + case "SECRET_KIND_GCP_OAUTH2_CLIENT_CREDENTIALS": + case 4: + message.kind = 4; + break; + case "SECRET_KIND_GCP_OAUTH2_ACCESS_TOKEN": + case 5: + message.kind = 5; + break; + case "SECRET_KIND_ANTHROPIC_ADMIN_API_KEY": + case 6: + message.kind = 6; + break; + case "SECRET_KIND_ANTHROPIC_API_KEY": + case 7: + message.kind = 7; + break; + case "SECRET_KIND_AZURE_ACCESS_TOKEN": + case 8: + message.kind = 8; + break; + case "SECRET_KIND_AZURE_IDENTITY_TOKEN": + case 9: + message.kind = 9; + break; + case "SECRET_KIND_DOCKER_HUB_PERSONAL_ACCESS_TOKEN": + case 10: + message.kind = 10; + break; + case "SECRET_KIND_GITHUB_APP_REFRESH_TOKEN": + case 11: + message.kind = 11; + break; + case "SECRET_KIND_GITHUB_APP_SERVER_TO_SERVER_TOKEN": + case 12: + message.kind = 12; + break; + case "SECRET_KIND_GITHUB_APP_USER_TO_SERVER_TOKEN": + case 13: + message.kind = 13; + break; + case "SECRET_KIND_GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN": + case 14: + message.kind = 14; + break; + case "SECRET_KIND_GITHUB_FINE_GRAINED_PERSONAL_ACCESS_TOKEN": + case 15: + message.kind = 15; + break; + case "SECRET_KIND_GITHUB_OAUTH_TOKEN": + case 16: + message.kind = 16; + break; + case "SECRET_KIND_HUGGINGFACE_API_KEY": + case 17: + message.kind = 17; + break; + case "SECRET_KIND_OPENAI_API_KEY": + case 18: + message.kind = 18; + break; + case "SECRET_KIND_PERPLEXITY_API_KEY": + case 19: + message.kind = 19; + break; + case "SECRET_KIND_STRIPE_SECRET_KEY": + case 20: + message.kind = 20; + break; + case "SECRET_KIND_STRIPE_RESTRICTED_KEY": + case 21: + message.kind = 21; + break; + case "SECRET_KIND_STRIPE_WEBHOOK_SECRET": + case 22: + message.kind = 22; + break; } if (object.locations) { if (!Array.isArray(object.locations)) @@ -33176,7 +35234,7 @@ for (var i = 0; i < object.locations.length; ++i) { if (typeof object.locations[i] !== "object") throw TypeError(".grafeas.v1.SecretOccurrence.locations: object expected"); - message.locations[i] = $root.grafeas.v1.SecretLocation.fromObject(object.locations[i]); + message.locations[i] = $root.grafeas.v1.SecretLocation.fromObject(object.locations[i], long + 1); } } if (object.statuses) { @@ -33186,9 +35244,19 @@ for (var i = 0; i < object.statuses.length; ++i) { if (typeof object.statuses[i] !== "object") throw TypeError(".grafeas.v1.SecretOccurrence.statuses: object expected"); - message.statuses[i] = $root.grafeas.v1.SecretStatus.fromObject(object.statuses[i]); + message.statuses[i] = $root.grafeas.v1.SecretStatus.fromObject(object.statuses[i], long + 1); } } + if (object.data != null) { + if (typeof object.data !== "object") + throw TypeError(".grafeas.v1.SecretOccurrence.data: object expected"); + message.data = $root.google.protobuf.Any.fromObject(object.data, long + 1); + } + if (object.digest != null) { + if (typeof object.digest !== "object") + throw TypeError(".grafeas.v1.SecretOccurrence.digest: object expected"); + message.digest = $root.grafeas.v1.Digest.fromObject(object.digest, long + 1); + } return message; }; @@ -33209,8 +35277,11 @@ object.locations = []; object.statuses = []; } - if (options.defaults) + if (options.defaults) { object.kind = options.enums === String ? "SECRET_KIND_UNSPECIFIED" : 0; + object.data = null; + object.digest = null; + } if (message.kind != null && message.hasOwnProperty("kind")) object.kind = options.enums === String ? $root.grafeas.v1.SecretKind[message.kind] === undefined ? message.kind : $root.grafeas.v1.SecretKind[message.kind] : message.kind; if (message.locations && message.locations.length) { @@ -33223,6 +35294,10 @@ for (var j = 0; j < message.statuses.length; ++j) object.statuses[j] = $root.grafeas.v1.SecretStatus.toObject(message.statuses[j], options); } + if (message.data != null && message.hasOwnProperty("data")) + object.data = $root.google.protobuf.Any.toObject(message.data, options); + if (message.digest != null && message.hasOwnProperty("digest")) + object.digest = $root.grafeas.v1.Digest.toObject(message.digest, options); return object; }; @@ -33275,7 +35350,7 @@ function SecretLocation(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33354,9 +35429,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SecretLocation.decode = function decode(reader, length, error) { + SecretLocation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SecretLocation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33364,11 +35443,11 @@ break; switch (tag >>> 3) { case 1: { - message.fileLocation = $root.grafeas.v1.FileLocation.decode(reader, reader.uint32()); + message.fileLocation = $root.grafeas.v1.FileLocation.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33399,14 +35478,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SecretLocation.verify = function verify(message) { + SecretLocation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.fileLocation != null && message.hasOwnProperty("fileLocation")) { properties.location = 1; { - var error = $root.grafeas.v1.FileLocation.verify(message.fileLocation); + var error = $root.grafeas.v1.FileLocation.verify(message.fileLocation, long + 1); if (error) return "fileLocation." + error; } @@ -33422,14 +35505,18 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SecretLocation} SecretLocation */ - SecretLocation.fromObject = function fromObject(object) { + SecretLocation.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SecretLocation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SecretLocation(); if (object.fileLocation != null) { if (typeof object.fileLocation !== "object") throw TypeError(".grafeas.v1.SecretLocation.fileLocation: object expected"); - message.fileLocation = $root.grafeas.v1.FileLocation.fromObject(object.fileLocation); + message.fileLocation = $root.grafeas.v1.FileLocation.fromObject(object.fileLocation, long + 1); } return message; }; @@ -33506,7 +35593,7 @@ function SecretStatus(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33591,9 +35678,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SecretStatus.decode = function decode(reader, length, error) { + SecretStatus.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.SecretStatus(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33605,7 +35696,7 @@ break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -33613,7 +35704,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33644,9 +35735,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SecretStatus.verify = function verify(message) { + SecretStatus.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.status != null && message.hasOwnProperty("status")) switch (message.status) { default: @@ -33658,7 +35753,7 @@ break; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -33676,9 +35771,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.SecretStatus} SecretStatus */ - SecretStatus.fromObject = function fromObject(object) { + SecretStatus.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.SecretStatus) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.SecretStatus(); switch (object.status) { default: @@ -33707,7 +35806,7 @@ if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".grafeas.v1.SecretStatus.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.message != null) message.message = String(object.message); @@ -33795,12 +35894,52 @@ * @property {number} SECRET_KIND_UNSPECIFIED=0 SECRET_KIND_UNSPECIFIED value * @property {number} SECRET_KIND_UNKNOWN=1 SECRET_KIND_UNKNOWN value * @property {number} SECRET_KIND_GCP_SERVICE_ACCOUNT_KEY=2 SECRET_KIND_GCP_SERVICE_ACCOUNT_KEY value + * @property {number} SECRET_KIND_GCP_API_KEY=3 SECRET_KIND_GCP_API_KEY value + * @property {number} SECRET_KIND_GCP_OAUTH2_CLIENT_CREDENTIALS=4 SECRET_KIND_GCP_OAUTH2_CLIENT_CREDENTIALS value + * @property {number} SECRET_KIND_GCP_OAUTH2_ACCESS_TOKEN=5 SECRET_KIND_GCP_OAUTH2_ACCESS_TOKEN value + * @property {number} SECRET_KIND_ANTHROPIC_ADMIN_API_KEY=6 SECRET_KIND_ANTHROPIC_ADMIN_API_KEY value + * @property {number} SECRET_KIND_ANTHROPIC_API_KEY=7 SECRET_KIND_ANTHROPIC_API_KEY value + * @property {number} SECRET_KIND_AZURE_ACCESS_TOKEN=8 SECRET_KIND_AZURE_ACCESS_TOKEN value + * @property {number} SECRET_KIND_AZURE_IDENTITY_TOKEN=9 SECRET_KIND_AZURE_IDENTITY_TOKEN value + * @property {number} SECRET_KIND_DOCKER_HUB_PERSONAL_ACCESS_TOKEN=10 SECRET_KIND_DOCKER_HUB_PERSONAL_ACCESS_TOKEN value + * @property {number} SECRET_KIND_GITHUB_APP_REFRESH_TOKEN=11 SECRET_KIND_GITHUB_APP_REFRESH_TOKEN value + * @property {number} SECRET_KIND_GITHUB_APP_SERVER_TO_SERVER_TOKEN=12 SECRET_KIND_GITHUB_APP_SERVER_TO_SERVER_TOKEN value + * @property {number} SECRET_KIND_GITHUB_APP_USER_TO_SERVER_TOKEN=13 SECRET_KIND_GITHUB_APP_USER_TO_SERVER_TOKEN value + * @property {number} SECRET_KIND_GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN=14 SECRET_KIND_GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN value + * @property {number} SECRET_KIND_GITHUB_FINE_GRAINED_PERSONAL_ACCESS_TOKEN=15 SECRET_KIND_GITHUB_FINE_GRAINED_PERSONAL_ACCESS_TOKEN value + * @property {number} SECRET_KIND_GITHUB_OAUTH_TOKEN=16 SECRET_KIND_GITHUB_OAUTH_TOKEN value + * @property {number} SECRET_KIND_HUGGINGFACE_API_KEY=17 SECRET_KIND_HUGGINGFACE_API_KEY value + * @property {number} SECRET_KIND_OPENAI_API_KEY=18 SECRET_KIND_OPENAI_API_KEY value + * @property {number} SECRET_KIND_PERPLEXITY_API_KEY=19 SECRET_KIND_PERPLEXITY_API_KEY value + * @property {number} SECRET_KIND_STRIPE_SECRET_KEY=20 SECRET_KIND_STRIPE_SECRET_KEY value + * @property {number} SECRET_KIND_STRIPE_RESTRICTED_KEY=21 SECRET_KIND_STRIPE_RESTRICTED_KEY value + * @property {number} SECRET_KIND_STRIPE_WEBHOOK_SECRET=22 SECRET_KIND_STRIPE_WEBHOOK_SECRET value */ v1.SecretKind = (function() { var valuesById = {}, values = Object.create(valuesById); values[valuesById[0] = "SECRET_KIND_UNSPECIFIED"] = 0; values[valuesById[1] = "SECRET_KIND_UNKNOWN"] = 1; values[valuesById[2] = "SECRET_KIND_GCP_SERVICE_ACCOUNT_KEY"] = 2; + values[valuesById[3] = "SECRET_KIND_GCP_API_KEY"] = 3; + values[valuesById[4] = "SECRET_KIND_GCP_OAUTH2_CLIENT_CREDENTIALS"] = 4; + values[valuesById[5] = "SECRET_KIND_GCP_OAUTH2_ACCESS_TOKEN"] = 5; + values[valuesById[6] = "SECRET_KIND_ANTHROPIC_ADMIN_API_KEY"] = 6; + values[valuesById[7] = "SECRET_KIND_ANTHROPIC_API_KEY"] = 7; + values[valuesById[8] = "SECRET_KIND_AZURE_ACCESS_TOKEN"] = 8; + values[valuesById[9] = "SECRET_KIND_AZURE_IDENTITY_TOKEN"] = 9; + values[valuesById[10] = "SECRET_KIND_DOCKER_HUB_PERSONAL_ACCESS_TOKEN"] = 10; + values[valuesById[11] = "SECRET_KIND_GITHUB_APP_REFRESH_TOKEN"] = 11; + values[valuesById[12] = "SECRET_KIND_GITHUB_APP_SERVER_TO_SERVER_TOKEN"] = 12; + values[valuesById[13] = "SECRET_KIND_GITHUB_APP_USER_TO_SERVER_TOKEN"] = 13; + values[valuesById[14] = "SECRET_KIND_GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN"] = 14; + values[valuesById[15] = "SECRET_KIND_GITHUB_FINE_GRAINED_PERSONAL_ACCESS_TOKEN"] = 15; + values[valuesById[16] = "SECRET_KIND_GITHUB_OAUTH_TOKEN"] = 16; + values[valuesById[17] = "SECRET_KIND_HUGGINGFACE_API_KEY"] = 17; + values[valuesById[18] = "SECRET_KIND_OPENAI_API_KEY"] = 18; + values[valuesById[19] = "SECRET_KIND_PERPLEXITY_API_KEY"] = 19; + values[valuesById[20] = "SECRET_KIND_STRIPE_SECRET_KEY"] = 20; + values[valuesById[21] = "SECRET_KIND_STRIPE_RESTRICTED_KEY"] = 21; + values[valuesById[22] = "SECRET_KIND_STRIPE_WEBHOOK_SECRET"] = 22; return values; })(); @@ -33828,7 +35967,7 @@ this.distributions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33924,9 +36063,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpgradeNote.decode = function decode(reader, length, error) { + UpgradeNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.UpgradeNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33938,21 +36081,21 @@ break; } case 2: { - message.version = $root.grafeas.v1.Version.decode(reader, reader.uint32()); + message.version = $root.grafeas.v1.Version.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { if (!(message.distributions && message.distributions.length)) message.distributions = []; - message.distributions.push($root.grafeas.v1.UpgradeDistribution.decode(reader, reader.uint32())); + message.distributions.push($root.grafeas.v1.UpgradeDistribution.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { - message.windowsUpdate = $root.grafeas.v1.WindowsUpdate.decode(reader, reader.uint32()); + message.windowsUpdate = $root.grafeas.v1.WindowsUpdate.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33983,14 +36126,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpgradeNote.verify = function verify(message) { + UpgradeNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message["package"] != null && message.hasOwnProperty("package")) if (!$util.isString(message["package"])) return "package: string expected"; if (message.version != null && message.hasOwnProperty("version")) { - var error = $root.grafeas.v1.Version.verify(message.version); + var error = $root.grafeas.v1.Version.verify(message.version, long + 1); if (error) return "version." + error; } @@ -33998,13 +36145,13 @@ if (!Array.isArray(message.distributions)) return "distributions: array expected"; for (var i = 0; i < message.distributions.length; ++i) { - var error = $root.grafeas.v1.UpgradeDistribution.verify(message.distributions[i]); + var error = $root.grafeas.v1.UpgradeDistribution.verify(message.distributions[i], long + 1); if (error) return "distributions." + error; } } if (message.windowsUpdate != null && message.hasOwnProperty("windowsUpdate")) { - var error = $root.grafeas.v1.WindowsUpdate.verify(message.windowsUpdate); + var error = $root.grafeas.v1.WindowsUpdate.verify(message.windowsUpdate, long + 1); if (error) return "windowsUpdate." + error; } @@ -34019,16 +36166,20 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.UpgradeNote} UpgradeNote */ - UpgradeNote.fromObject = function fromObject(object) { + UpgradeNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.UpgradeNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.UpgradeNote(); if (object["package"] != null) message["package"] = String(object["package"]); if (object.version != null) { if (typeof object.version !== "object") throw TypeError(".grafeas.v1.UpgradeNote.version: object expected"); - message.version = $root.grafeas.v1.Version.fromObject(object.version); + message.version = $root.grafeas.v1.Version.fromObject(object.version, long + 1); } if (object.distributions) { if (!Array.isArray(object.distributions)) @@ -34037,13 +36188,13 @@ for (var i = 0; i < object.distributions.length; ++i) { if (typeof object.distributions[i] !== "object") throw TypeError(".grafeas.v1.UpgradeNote.distributions: object expected"); - message.distributions[i] = $root.grafeas.v1.UpgradeDistribution.fromObject(object.distributions[i]); + message.distributions[i] = $root.grafeas.v1.UpgradeDistribution.fromObject(object.distributions[i], long + 1); } } if (object.windowsUpdate != null) { if (typeof object.windowsUpdate !== "object") throw TypeError(".grafeas.v1.UpgradeNote.windowsUpdate: object expected"); - message.windowsUpdate = $root.grafeas.v1.WindowsUpdate.fromObject(object.windowsUpdate); + message.windowsUpdate = $root.grafeas.v1.WindowsUpdate.fromObject(object.windowsUpdate, long + 1); } return message; }; @@ -34135,7 +36286,7 @@ this.cve = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34231,9 +36382,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpgradeDistribution.decode = function decode(reader, length, error) { + UpgradeDistribution.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.UpgradeDistribution(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34259,7 +36414,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34290,9 +36445,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpgradeDistribution.verify = function verify(message) { + UpgradeDistribution.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.cpeUri != null && message.hasOwnProperty("cpeUri")) if (!$util.isString(message.cpeUri)) return "cpeUri: string expected"; @@ -34320,9 +36479,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.UpgradeDistribution} UpgradeDistribution */ - UpgradeDistribution.fromObject = function fromObject(object) { + UpgradeDistribution.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.UpgradeDistribution) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.UpgradeDistribution(); if (object.cpeUri != null) message.cpeUri = String(object.cpeUri); @@ -34431,7 +36594,7 @@ this.kbArticleIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34558,9 +36721,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WindowsUpdate.decode = function decode(reader, length, error) { + WindowsUpdate.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.WindowsUpdate(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34568,7 +36735,7 @@ break; switch (tag >>> 3) { case 1: { - message.identity = $root.grafeas.v1.WindowsUpdate.Identity.decode(reader, reader.uint32()); + message.identity = $root.grafeas.v1.WindowsUpdate.Identity.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -34582,7 +36749,7 @@ case 4: { if (!(message.categories && message.categories.length)) message.categories = []; - message.categories.push($root.grafeas.v1.WindowsUpdate.Category.decode(reader, reader.uint32())); + message.categories.push($root.grafeas.v1.WindowsUpdate.Category.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { @@ -34596,11 +36763,11 @@ break; } case 7: { - message.lastPublishedTimestamp = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.lastPublishedTimestamp = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34631,11 +36798,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WindowsUpdate.verify = function verify(message) { + WindowsUpdate.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.identity != null && message.hasOwnProperty("identity")) { - var error = $root.grafeas.v1.WindowsUpdate.Identity.verify(message.identity); + var error = $root.grafeas.v1.WindowsUpdate.Identity.verify(message.identity, long + 1); if (error) return "identity." + error; } @@ -34649,7 +36820,7 @@ if (!Array.isArray(message.categories)) return "categories: array expected"; for (var i = 0; i < message.categories.length; ++i) { - var error = $root.grafeas.v1.WindowsUpdate.Category.verify(message.categories[i]); + var error = $root.grafeas.v1.WindowsUpdate.Category.verify(message.categories[i], long + 1); if (error) return "categories." + error; } @@ -34665,7 +36836,7 @@ if (!$util.isString(message.supportUrl)) return "supportUrl: string expected"; if (message.lastPublishedTimestamp != null && message.hasOwnProperty("lastPublishedTimestamp")) { - var error = $root.google.protobuf.Timestamp.verify(message.lastPublishedTimestamp); + var error = $root.google.protobuf.Timestamp.verify(message.lastPublishedTimestamp, long + 1); if (error) return "lastPublishedTimestamp." + error; } @@ -34680,14 +36851,18 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.WindowsUpdate} WindowsUpdate */ - WindowsUpdate.fromObject = function fromObject(object) { + WindowsUpdate.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.WindowsUpdate) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.WindowsUpdate(); if (object.identity != null) { if (typeof object.identity !== "object") throw TypeError(".grafeas.v1.WindowsUpdate.identity: object expected"); - message.identity = $root.grafeas.v1.WindowsUpdate.Identity.fromObject(object.identity); + message.identity = $root.grafeas.v1.WindowsUpdate.Identity.fromObject(object.identity, long + 1); } if (object.title != null) message.title = String(object.title); @@ -34700,7 +36875,7 @@ for (var i = 0; i < object.categories.length; ++i) { if (typeof object.categories[i] !== "object") throw TypeError(".grafeas.v1.WindowsUpdate.categories: object expected"); - message.categories[i] = $root.grafeas.v1.WindowsUpdate.Category.fromObject(object.categories[i]); + message.categories[i] = $root.grafeas.v1.WindowsUpdate.Category.fromObject(object.categories[i], long + 1); } } if (object.kbArticleIds) { @@ -34715,7 +36890,7 @@ if (object.lastPublishedTimestamp != null) { if (typeof object.lastPublishedTimestamp !== "object") throw TypeError(".grafeas.v1.WindowsUpdate.lastPublishedTimestamp: object expected"); - message.lastPublishedTimestamp = $root.google.protobuf.Timestamp.fromObject(object.lastPublishedTimestamp); + message.lastPublishedTimestamp = $root.google.protobuf.Timestamp.fromObject(object.lastPublishedTimestamp, long + 1); } return message; }; @@ -34814,7 +36989,7 @@ function Identity(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34889,9 +37064,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Identity.decode = function decode(reader, length, error) { + Identity.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.WindowsUpdate.Identity(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34907,7 +37086,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34938,9 +37117,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Identity.verify = function verify(message) { + Identity.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.updateId != null && message.hasOwnProperty("updateId")) if (!$util.isString(message.updateId)) return "updateId: string expected"; @@ -34958,9 +37141,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.WindowsUpdate.Identity} Identity */ - Identity.fromObject = function fromObject(object) { + Identity.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.WindowsUpdate.Identity) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.WindowsUpdate.Identity(); if (object.updateId != null) message.updateId = String(object.updateId); @@ -35043,7 +37230,7 @@ function Category(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35118,9 +37305,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Category.decode = function decode(reader, length, error) { + Category.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.WindowsUpdate.Category(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35136,7 +37327,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35167,9 +37358,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Category.verify = function verify(message) { + Category.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.categoryId != null && message.hasOwnProperty("categoryId")) if (!$util.isString(message.categoryId)) return "categoryId: string expected"; @@ -35187,9 +37382,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.WindowsUpdate.Category} Category */ - Category.fromObject = function fromObject(object) { + Category.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.WindowsUpdate.Category) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.WindowsUpdate.Category(); if (object.categoryId != null) message.categoryId = String(object.categoryId); @@ -35277,7 +37476,7 @@ function UpgradeOccurrence(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35372,9 +37571,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpgradeOccurrence.decode = function decode(reader, length, error) { + UpgradeOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.UpgradeOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35386,19 +37589,19 @@ break; } case 3: { - message.parsedVersion = $root.grafeas.v1.Version.decode(reader, reader.uint32()); + message.parsedVersion = $root.grafeas.v1.Version.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.distribution = $root.grafeas.v1.UpgradeDistribution.decode(reader, reader.uint32()); + message.distribution = $root.grafeas.v1.UpgradeDistribution.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.windowsUpdate = $root.grafeas.v1.WindowsUpdate.decode(reader, reader.uint32()); + message.windowsUpdate = $root.grafeas.v1.WindowsUpdate.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35429,24 +37632,28 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpgradeOccurrence.verify = function verify(message) { + UpgradeOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message["package"] != null && message.hasOwnProperty("package")) if (!$util.isString(message["package"])) return "package: string expected"; if (message.parsedVersion != null && message.hasOwnProperty("parsedVersion")) { - var error = $root.grafeas.v1.Version.verify(message.parsedVersion); + var error = $root.grafeas.v1.Version.verify(message.parsedVersion, long + 1); if (error) return "parsedVersion." + error; } if (message.distribution != null && message.hasOwnProperty("distribution")) { - var error = $root.grafeas.v1.UpgradeDistribution.verify(message.distribution); + var error = $root.grafeas.v1.UpgradeDistribution.verify(message.distribution, long + 1); if (error) return "distribution." + error; } if (message.windowsUpdate != null && message.hasOwnProperty("windowsUpdate")) { - var error = $root.grafeas.v1.WindowsUpdate.verify(message.windowsUpdate); + var error = $root.grafeas.v1.WindowsUpdate.verify(message.windowsUpdate, long + 1); if (error) return "windowsUpdate." + error; } @@ -35461,26 +37668,30 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.UpgradeOccurrence} UpgradeOccurrence */ - UpgradeOccurrence.fromObject = function fromObject(object) { + UpgradeOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.UpgradeOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.UpgradeOccurrence(); if (object["package"] != null) message["package"] = String(object["package"]); if (object.parsedVersion != null) { if (typeof object.parsedVersion !== "object") throw TypeError(".grafeas.v1.UpgradeOccurrence.parsedVersion: object expected"); - message.parsedVersion = $root.grafeas.v1.Version.fromObject(object.parsedVersion); + message.parsedVersion = $root.grafeas.v1.Version.fromObject(object.parsedVersion, long + 1); } if (object.distribution != null) { if (typeof object.distribution !== "object") throw TypeError(".grafeas.v1.UpgradeOccurrence.distribution: object expected"); - message.distribution = $root.grafeas.v1.UpgradeDistribution.fromObject(object.distribution); + message.distribution = $root.grafeas.v1.UpgradeDistribution.fromObject(object.distribution, long + 1); } if (object.windowsUpdate != null) { if (typeof object.windowsUpdate !== "object") throw TypeError(".grafeas.v1.UpgradeOccurrence.windowsUpdate: object expected"); - message.windowsUpdate = $root.grafeas.v1.WindowsUpdate.fromObject(object.windowsUpdate); + message.windowsUpdate = $root.grafeas.v1.WindowsUpdate.fromObject(object.windowsUpdate, long + 1); } return message; }; @@ -35570,7 +37781,7 @@ function VulnerabilityAssessmentNote(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35695,9 +37906,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VulnerabilityAssessmentNote.decode = function decode(reader, length, error) { + VulnerabilityAssessmentNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityAssessmentNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35721,19 +37936,19 @@ break; } case 5: { - message.publisher = $root.grafeas.v1.VulnerabilityAssessmentNote.Publisher.decode(reader, reader.uint32()); + message.publisher = $root.grafeas.v1.VulnerabilityAssessmentNote.Publisher.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.product = $root.grafeas.v1.VulnerabilityAssessmentNote.Product.decode(reader, reader.uint32()); + message.product = $root.grafeas.v1.VulnerabilityAssessmentNote.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.assessment = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.decode(reader, reader.uint32()); + message.assessment = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35764,9 +37979,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VulnerabilityAssessmentNote.verify = function verify(message) { + VulnerabilityAssessmentNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.title != null && message.hasOwnProperty("title")) if (!$util.isString(message.title)) return "title: string expected"; @@ -35780,17 +37999,17 @@ if (!$util.isString(message.languageCode)) return "languageCode: string expected"; if (message.publisher != null && message.hasOwnProperty("publisher")) { - var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Publisher.verify(message.publisher); + var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Publisher.verify(message.publisher, long + 1); if (error) return "publisher." + error; } if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Product.verify(message.product); + var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Product.verify(message.product, long + 1); if (error) return "product." + error; } if (message.assessment != null && message.hasOwnProperty("assessment")) { - var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.verify(message.assessment); + var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.verify(message.assessment, long + 1); if (error) return "assessment." + error; } @@ -35805,9 +38024,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityAssessmentNote} VulnerabilityAssessmentNote */ - VulnerabilityAssessmentNote.fromObject = function fromObject(object) { + VulnerabilityAssessmentNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityAssessmentNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityAssessmentNote(); if (object.title != null) message.title = String(object.title); @@ -35820,17 +38043,17 @@ if (object.publisher != null) { if (typeof object.publisher !== "object") throw TypeError(".grafeas.v1.VulnerabilityAssessmentNote.publisher: object expected"); - message.publisher = $root.grafeas.v1.VulnerabilityAssessmentNote.Publisher.fromObject(object.publisher); + message.publisher = $root.grafeas.v1.VulnerabilityAssessmentNote.Publisher.fromObject(object.publisher, long + 1); } if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".grafeas.v1.VulnerabilityAssessmentNote.product: object expected"); - message.product = $root.grafeas.v1.VulnerabilityAssessmentNote.Product.fromObject(object.product); + message.product = $root.grafeas.v1.VulnerabilityAssessmentNote.Product.fromObject(object.product, long + 1); } if (object.assessment != null) { if (typeof object.assessment !== "object") throw TypeError(".grafeas.v1.VulnerabilityAssessmentNote.assessment: object expected"); - message.assessment = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.fromObject(object.assessment); + message.assessment = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.fromObject(object.assessment, long + 1); } return message; }; @@ -35922,7 +38145,7 @@ function Publisher(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36007,9 +38230,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Publisher.decode = function decode(reader, length, error) { + Publisher.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityAssessmentNote.Publisher(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36029,7 +38256,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36060,9 +38287,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Publisher.verify = function verify(message) { + Publisher.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -36083,9 +38314,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityAssessmentNote.Publisher} Publisher */ - Publisher.fromObject = function fromObject(object) { + Publisher.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityAssessmentNote.Publisher) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityAssessmentNote.Publisher(); if (object.name != null) message.name = String(object.name); @@ -36174,7 +38409,7 @@ function Product(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36273,9 +38508,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Product.decode = function decode(reader, length, error) { + Product.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityAssessmentNote.Product(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36295,7 +38534,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36326,9 +38565,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Product.verify = function verify(message) { + Product.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) @@ -36352,9 +38595,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityAssessmentNote.Product} Product */ - Product.fromObject = function fromObject(object) { + Product.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityAssessmentNote.Product) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityAssessmentNote.Product(); if (object.name != null) message.name = String(object.name); @@ -36454,7 +38701,7 @@ this.remediations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36602,9 +38849,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Assessment.decode = function decode(reader, length, error) { + Assessment.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36630,7 +38881,7 @@ case 4: { if (!(message.relatedUris && message.relatedUris.length)) message.relatedUris = []; - message.relatedUris.push($root.grafeas.v1.RelatedUrl.decode(reader, reader.uint32())); + message.relatedUris.push($root.grafeas.v1.RelatedUrl.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { @@ -36644,17 +38895,17 @@ break; } case 7: { - message.justification = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.decode(reader, reader.uint32()); + message.justification = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { if (!(message.remediations && message.remediations.length)) message.remediations = []; - message.remediations.push($root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.decode(reader, reader.uint32())); + message.remediations.push($root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36685,9 +38936,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Assessment.verify = function verify(message) { + Assessment.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.cve != null && message.hasOwnProperty("cve")) if (!$util.isString(message.cve)) return "cve: string expected"; @@ -36704,7 +38959,7 @@ if (!Array.isArray(message.relatedUris)) return "relatedUris: array expected"; for (var i = 0; i < message.relatedUris.length; ++i) { - var error = $root.grafeas.v1.RelatedUrl.verify(message.relatedUris[i]); + var error = $root.grafeas.v1.RelatedUrl.verify(message.relatedUris[i], long + 1); if (error) return "relatedUris." + error; } @@ -36728,7 +38983,7 @@ return "impacts: string[] expected"; } if (message.justification != null && message.hasOwnProperty("justification")) { - var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.verify(message.justification); + var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.verify(message.justification, long + 1); if (error) return "justification." + error; } @@ -36736,7 +38991,7 @@ if (!Array.isArray(message.remediations)) return "remediations: array expected"; for (var i = 0; i < message.remediations.length; ++i) { - var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.verify(message.remediations[i]); + var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.verify(message.remediations[i], long + 1); if (error) return "remediations." + error; } @@ -36752,9 +39007,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityAssessmentNote.Assessment} Assessment */ - Assessment.fromObject = function fromObject(object) { + Assessment.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment(); if (object.cve != null) message.cve = String(object.cve); @@ -36771,7 +39030,7 @@ for (var i = 0; i < object.relatedUris.length; ++i) { if (typeof object.relatedUris[i] !== "object") throw TypeError(".grafeas.v1.VulnerabilityAssessmentNote.Assessment.relatedUris: object expected"); - message.relatedUris[i] = $root.grafeas.v1.RelatedUrl.fromObject(object.relatedUris[i]); + message.relatedUris[i] = $root.grafeas.v1.RelatedUrl.fromObject(object.relatedUris[i], long + 1); } } switch (object.state) { @@ -36812,7 +39071,7 @@ if (object.justification != null) { if (typeof object.justification !== "object") throw TypeError(".grafeas.v1.VulnerabilityAssessmentNote.Assessment.justification: object expected"); - message.justification = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.fromObject(object.justification); + message.justification = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.fromObject(object.justification, long + 1); } if (object.remediations) { if (!Array.isArray(object.remediations)) @@ -36821,7 +39080,7 @@ for (var i = 0; i < object.remediations.length; ++i) { if (typeof object.remediations[i] !== "object") throw TypeError(".grafeas.v1.VulnerabilityAssessmentNote.Assessment.remediations: object expected"); - message.remediations[i] = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.fromObject(object.remediations[i]); + message.remediations[i] = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.fromObject(object.remediations[i], long + 1); } } return message; @@ -36950,7 +39209,7 @@ function Justification(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37025,9 +39284,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Justification.decode = function decode(reader, length, error) { + Justification.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37043,7 +39306,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37074,9 +39337,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Justification.verify = function verify(message) { + Justification.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.justificationType != null && message.hasOwnProperty("justificationType")) switch (message.justificationType) { default: @@ -37103,9 +39370,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification} Justification */ - Justification.fromObject = function fromObject(object) { + Justification.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification(); switch (object.justificationType) { default: @@ -37241,7 +39512,7 @@ function Remediation(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37326,9 +39597,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Remediation.decode = function decode(reader, length, error) { + Remediation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37344,11 +39619,11 @@ break; } case 3: { - message.remediationUri = $root.grafeas.v1.RelatedUrl.decode(reader, reader.uint32()); + message.remediationUri = $root.grafeas.v1.RelatedUrl.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37379,9 +39654,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Remediation.verify = function verify(message) { + Remediation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.remediationType != null && message.hasOwnProperty("remediationType")) switch (message.remediationType) { default: @@ -37398,7 +39677,7 @@ if (!$util.isString(message.details)) return "details: string expected"; if (message.remediationUri != null && message.hasOwnProperty("remediationUri")) { - var error = $root.grafeas.v1.RelatedUrl.verify(message.remediationUri); + var error = $root.grafeas.v1.RelatedUrl.verify(message.remediationUri, long + 1); if (error) return "remediationUri." + error; } @@ -37413,9 +39692,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation} Remediation */ - Remediation.fromObject = function fromObject(object) { + Remediation.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation(); switch (object.remediationType) { default: @@ -37454,7 +39737,7 @@ if (object.remediationUri != null) { if (typeof object.remediationUri !== "object") throw TypeError(".grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.remediationUri: object expected"); - message.remediationUri = $root.grafeas.v1.RelatedUrl.fromObject(object.remediationUri); + message.remediationUri = $root.grafeas.v1.RelatedUrl.fromObject(object.remediationUri, long + 1); } return message; }; @@ -37557,6 +39840,7 @@ * @property {google.protobuf.ITimestamp|null} [sourceUpdateTime] VulnerabilityNote sourceUpdateTime * @property {grafeas.v1.CVSSVersion|null} [cvssVersion] VulnerabilityNote cvssVersion * @property {grafeas.v1.ICVSS|null} [cvssV2] VulnerabilityNote cvssV2 + * @property {google.protobuf.ITimestamp|null} [advisoryPublishTime] VulnerabilityNote advisoryPublishTime */ /** @@ -37572,7 +39856,7 @@ this.windowsDetails = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37640,6 +39924,14 @@ */ VulnerabilityNote.prototype.cvssV2 = null; + /** + * VulnerabilityNote advisoryPublishTime. + * @member {google.protobuf.ITimestamp|null|undefined} advisoryPublishTime + * @memberof grafeas.v1.VulnerabilityNote + * @instance + */ + VulnerabilityNote.prototype.advisoryPublishTime = null; + /** * Creates a new VulnerabilityNote instance using the specified properties. * @function create @@ -37682,6 +39974,8 @@ writer.uint32(/* id 7, wireType 0 =*/56).int32(message.cvssVersion); if (message.cvssV2 != null && Object.hasOwnProperty.call(message, "cvssV2")) $root.grafeas.v1.CVSS.encode(message.cvssV2, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.advisoryPublishTime != null && Object.hasOwnProperty.call(message, "advisoryPublishTime")) + $root.google.protobuf.Timestamp.encode(message.advisoryPublishTime, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); return writer; }; @@ -37709,9 +40003,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VulnerabilityNote.decode = function decode(reader, length, error) { + VulnerabilityNote.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityNote(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37729,21 +40027,21 @@ case 3: { if (!(message.details && message.details.length)) message.details = []; - message.details.push($root.grafeas.v1.VulnerabilityNote.Detail.decode(reader, reader.uint32())); + message.details.push($root.grafeas.v1.VulnerabilityNote.Detail.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { - message.cvssV3 = $root.grafeas.v1.CVSSv3.decode(reader, reader.uint32()); + message.cvssV3 = $root.grafeas.v1.CVSSv3.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { if (!(message.windowsDetails && message.windowsDetails.length)) message.windowsDetails = []; - message.windowsDetails.push($root.grafeas.v1.VulnerabilityNote.WindowsDetail.decode(reader, reader.uint32())); + message.windowsDetails.push($root.grafeas.v1.VulnerabilityNote.WindowsDetail.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { - message.sourceUpdateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.sourceUpdateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -37751,11 +40049,15 @@ break; } case 8: { - message.cvssV2 = $root.grafeas.v1.CVSS.decode(reader, reader.uint32()); + message.cvssV2 = $root.grafeas.v1.CVSS.decode(reader, reader.uint32(), undefined, long + 1); + break; + } + case 9: { + message.advisoryPublishTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37786,9 +40088,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VulnerabilityNote.verify = function verify(message) { + VulnerabilityNote.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.cvssScore != null && message.hasOwnProperty("cvssScore")) if (typeof message.cvssScore !== "number") return "cvssScore: number expected"; @@ -37808,13 +40114,13 @@ if (!Array.isArray(message.details)) return "details: array expected"; for (var i = 0; i < message.details.length; ++i) { - var error = $root.grafeas.v1.VulnerabilityNote.Detail.verify(message.details[i]); + var error = $root.grafeas.v1.VulnerabilityNote.Detail.verify(message.details[i], long + 1); if (error) return "details." + error; } } if (message.cvssV3 != null && message.hasOwnProperty("cvssV3")) { - var error = $root.grafeas.v1.CVSSv3.verify(message.cvssV3); + var error = $root.grafeas.v1.CVSSv3.verify(message.cvssV3, long + 1); if (error) return "cvssV3." + error; } @@ -37822,13 +40128,13 @@ if (!Array.isArray(message.windowsDetails)) return "windowsDetails: array expected"; for (var i = 0; i < message.windowsDetails.length; ++i) { - var error = $root.grafeas.v1.VulnerabilityNote.WindowsDetail.verify(message.windowsDetails[i]); + var error = $root.grafeas.v1.VulnerabilityNote.WindowsDetail.verify(message.windowsDetails[i], long + 1); if (error) return "windowsDetails." + error; } } if (message.sourceUpdateTime != null && message.hasOwnProperty("sourceUpdateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.sourceUpdateTime); + var error = $root.google.protobuf.Timestamp.verify(message.sourceUpdateTime, long + 1); if (error) return "sourceUpdateTime." + error; } @@ -37842,10 +40148,15 @@ break; } if (message.cvssV2 != null && message.hasOwnProperty("cvssV2")) { - var error = $root.grafeas.v1.CVSS.verify(message.cvssV2); + var error = $root.grafeas.v1.CVSS.verify(message.cvssV2, long + 1); if (error) return "cvssV2." + error; } + if (message.advisoryPublishTime != null && message.hasOwnProperty("advisoryPublishTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.advisoryPublishTime, long + 1); + if (error) + return "advisoryPublishTime." + error; + } return null; }; @@ -37857,9 +40168,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityNote} VulnerabilityNote */ - VulnerabilityNote.fromObject = function fromObject(object) { + VulnerabilityNote.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityNote) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityNote(); if (object.cvssScore != null) message.cvssScore = Number(object.cvssScore); @@ -37902,13 +40217,13 @@ for (var i = 0; i < object.details.length; ++i) { if (typeof object.details[i] !== "object") throw TypeError(".grafeas.v1.VulnerabilityNote.details: object expected"); - message.details[i] = $root.grafeas.v1.VulnerabilityNote.Detail.fromObject(object.details[i]); + message.details[i] = $root.grafeas.v1.VulnerabilityNote.Detail.fromObject(object.details[i], long + 1); } } if (object.cvssV3 != null) { if (typeof object.cvssV3 !== "object") throw TypeError(".grafeas.v1.VulnerabilityNote.cvssV3: object expected"); - message.cvssV3 = $root.grafeas.v1.CVSSv3.fromObject(object.cvssV3); + message.cvssV3 = $root.grafeas.v1.CVSSv3.fromObject(object.cvssV3, long + 1); } if (object.windowsDetails) { if (!Array.isArray(object.windowsDetails)) @@ -37917,13 +40232,13 @@ for (var i = 0; i < object.windowsDetails.length; ++i) { if (typeof object.windowsDetails[i] !== "object") throw TypeError(".grafeas.v1.VulnerabilityNote.windowsDetails: object expected"); - message.windowsDetails[i] = $root.grafeas.v1.VulnerabilityNote.WindowsDetail.fromObject(object.windowsDetails[i]); + message.windowsDetails[i] = $root.grafeas.v1.VulnerabilityNote.WindowsDetail.fromObject(object.windowsDetails[i], long + 1); } } if (object.sourceUpdateTime != null) { if (typeof object.sourceUpdateTime !== "object") throw TypeError(".grafeas.v1.VulnerabilityNote.sourceUpdateTime: object expected"); - message.sourceUpdateTime = $root.google.protobuf.Timestamp.fromObject(object.sourceUpdateTime); + message.sourceUpdateTime = $root.google.protobuf.Timestamp.fromObject(object.sourceUpdateTime, long + 1); } switch (object.cvssVersion) { default: @@ -37948,7 +40263,12 @@ if (object.cvssV2 != null) { if (typeof object.cvssV2 !== "object") throw TypeError(".grafeas.v1.VulnerabilityNote.cvssV2: object expected"); - message.cvssV2 = $root.grafeas.v1.CVSS.fromObject(object.cvssV2); + message.cvssV2 = $root.grafeas.v1.CVSS.fromObject(object.cvssV2, long + 1); + } + if (object.advisoryPublishTime != null) { + if (typeof object.advisoryPublishTime !== "object") + throw TypeError(".grafeas.v1.VulnerabilityNote.advisoryPublishTime: object expected"); + message.advisoryPublishTime = $root.google.protobuf.Timestamp.fromObject(object.advisoryPublishTime, long + 1); } return message; }; @@ -37977,6 +40297,7 @@ object.sourceUpdateTime = null; object.cvssVersion = options.enums === String ? "CVSS_VERSION_UNSPECIFIED" : 0; object.cvssV2 = null; + object.advisoryPublishTime = null; } if (message.cvssScore != null && message.hasOwnProperty("cvssScore")) object.cvssScore = options.json && !isFinite(message.cvssScore) ? String(message.cvssScore) : message.cvssScore; @@ -38000,6 +40321,8 @@ object.cvssVersion = options.enums === String ? $root.grafeas.v1.CVSSVersion[message.cvssVersion] === undefined ? message.cvssVersion : $root.grafeas.v1.CVSSVersion[message.cvssVersion] : message.cvssVersion; if (message.cvssV2 != null && message.hasOwnProperty("cvssV2")) object.cvssV2 = $root.grafeas.v1.CVSS.toObject(message.cvssV2, options); + if (message.advisoryPublishTime != null && message.hasOwnProperty("advisoryPublishTime")) + object.advisoryPublishTime = $root.google.protobuf.Timestamp.toObject(message.advisoryPublishTime, options); return object; }; @@ -38062,7 +40385,7 @@ function Detail(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38257,9 +40580,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Detail.decode = function decode(reader, length, error) { + Detail.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityNote.Detail(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38287,11 +40614,11 @@ break; } case 6: { - message.affectedVersionStart = $root.grafeas.v1.Version.decode(reader, reader.uint32()); + message.affectedVersionStart = $root.grafeas.v1.Version.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.affectedVersionEnd = $root.grafeas.v1.Version.decode(reader, reader.uint32()); + message.affectedVersionEnd = $root.grafeas.v1.Version.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { @@ -38303,7 +40630,7 @@ break; } case 10: { - message.fixedVersion = $root.grafeas.v1.Version.decode(reader, reader.uint32()); + message.fixedVersion = $root.grafeas.v1.Version.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { @@ -38311,7 +40638,7 @@ break; } case 12: { - message.sourceUpdateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.sourceUpdateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { @@ -38323,7 +40650,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38354,9 +40681,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Detail.verify = function verify(message) { + Detail.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.severityName != null && message.hasOwnProperty("severityName")) if (!$util.isString(message.severityName)) return "severityName: string expected"; @@ -38373,12 +40704,12 @@ if (!$util.isString(message.affectedPackage)) return "affectedPackage: string expected"; if (message.affectedVersionStart != null && message.hasOwnProperty("affectedVersionStart")) { - var error = $root.grafeas.v1.Version.verify(message.affectedVersionStart); + var error = $root.grafeas.v1.Version.verify(message.affectedVersionStart, long + 1); if (error) return "affectedVersionStart." + error; } if (message.affectedVersionEnd != null && message.hasOwnProperty("affectedVersionEnd")) { - var error = $root.grafeas.v1.Version.verify(message.affectedVersionEnd); + var error = $root.grafeas.v1.Version.verify(message.affectedVersionEnd, long + 1); if (error) return "affectedVersionEnd." + error; } @@ -38389,7 +40720,7 @@ if (!$util.isString(message.fixedPackage)) return "fixedPackage: string expected"; if (message.fixedVersion != null && message.hasOwnProperty("fixedVersion")) { - var error = $root.grafeas.v1.Version.verify(message.fixedVersion); + var error = $root.grafeas.v1.Version.verify(message.fixedVersion, long + 1); if (error) return "fixedVersion." + error; } @@ -38397,7 +40728,7 @@ if (typeof message.isObsolete !== "boolean") return "isObsolete: boolean expected"; if (message.sourceUpdateTime != null && message.hasOwnProperty("sourceUpdateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.sourceUpdateTime); + var error = $root.google.protobuf.Timestamp.verify(message.sourceUpdateTime, long + 1); if (error) return "sourceUpdateTime." + error; } @@ -38418,9 +40749,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityNote.Detail} Detail */ - Detail.fromObject = function fromObject(object) { + Detail.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityNote.Detail) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityNote.Detail(); if (object.severityName != null) message.severityName = String(object.severityName); @@ -38435,12 +40770,12 @@ if (object.affectedVersionStart != null) { if (typeof object.affectedVersionStart !== "object") throw TypeError(".grafeas.v1.VulnerabilityNote.Detail.affectedVersionStart: object expected"); - message.affectedVersionStart = $root.grafeas.v1.Version.fromObject(object.affectedVersionStart); + message.affectedVersionStart = $root.grafeas.v1.Version.fromObject(object.affectedVersionStart, long + 1); } if (object.affectedVersionEnd != null) { if (typeof object.affectedVersionEnd !== "object") throw TypeError(".grafeas.v1.VulnerabilityNote.Detail.affectedVersionEnd: object expected"); - message.affectedVersionEnd = $root.grafeas.v1.Version.fromObject(object.affectedVersionEnd); + message.affectedVersionEnd = $root.grafeas.v1.Version.fromObject(object.affectedVersionEnd, long + 1); } if (object.fixedCpeUri != null) message.fixedCpeUri = String(object.fixedCpeUri); @@ -38449,14 +40784,14 @@ if (object.fixedVersion != null) { if (typeof object.fixedVersion !== "object") throw TypeError(".grafeas.v1.VulnerabilityNote.Detail.fixedVersion: object expected"); - message.fixedVersion = $root.grafeas.v1.Version.fromObject(object.fixedVersion); + message.fixedVersion = $root.grafeas.v1.Version.fromObject(object.fixedVersion, long + 1); } if (object.isObsolete != null) message.isObsolete = Boolean(object.isObsolete); if (object.sourceUpdateTime != null) { if (typeof object.sourceUpdateTime !== "object") throw TypeError(".grafeas.v1.VulnerabilityNote.Detail.sourceUpdateTime: object expected"); - message.sourceUpdateTime = $root.google.protobuf.Timestamp.fromObject(object.sourceUpdateTime); + message.sourceUpdateTime = $root.google.protobuf.Timestamp.fromObject(object.sourceUpdateTime, long + 1); } if (object.source != null) message.source = String(object.source); @@ -38578,7 +40913,7 @@ this.fixingKbs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38674,9 +41009,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WindowsDetail.decode = function decode(reader, length, error) { + WindowsDetail.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityNote.WindowsDetail(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38698,11 +41037,11 @@ case 4: { if (!(message.fixingKbs && message.fixingKbs.length)) message.fixingKbs = []; - message.fixingKbs.push($root.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.decode(reader, reader.uint32())); + message.fixingKbs.push($root.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38733,9 +41072,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WindowsDetail.verify = function verify(message) { + WindowsDetail.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.cpeUri != null && message.hasOwnProperty("cpeUri")) if (!$util.isString(message.cpeUri)) return "cpeUri: string expected"; @@ -38749,7 +41092,7 @@ if (!Array.isArray(message.fixingKbs)) return "fixingKbs: array expected"; for (var i = 0; i < message.fixingKbs.length; ++i) { - var error = $root.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.verify(message.fixingKbs[i]); + var error = $root.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.verify(message.fixingKbs[i], long + 1); if (error) return "fixingKbs." + error; } @@ -38765,9 +41108,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityNote.WindowsDetail} WindowsDetail */ - WindowsDetail.fromObject = function fromObject(object) { + WindowsDetail.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityNote.WindowsDetail) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityNote.WindowsDetail(); if (object.cpeUri != null) message.cpeUri = String(object.cpeUri); @@ -38782,7 +41129,7 @@ for (var i = 0; i < object.fixingKbs.length; ++i) { if (typeof object.fixingKbs[i] !== "object") throw TypeError(".grafeas.v1.VulnerabilityNote.WindowsDetail.fixingKbs: object expected"); - message.fixingKbs[i] = $root.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.fromObject(object.fixingKbs[i]); + message.fixingKbs[i] = $root.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.fromObject(object.fixingKbs[i], long + 1); } } return message; @@ -38869,7 +41216,7 @@ function KnowledgeBase(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38944,9 +41291,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - KnowledgeBase.decode = function decode(reader, length, error) { + KnowledgeBase.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38962,7 +41313,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38993,9 +41344,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - KnowledgeBase.verify = function verify(message) { + KnowledgeBase.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -39013,9 +41368,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase} KnowledgeBase */ - KnowledgeBase.fromObject = function fromObject(object) { + KnowledgeBase.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase(); if (object.name != null) message.name = String(object.name); @@ -39103,6 +41462,7 @@ * @property {grafeas.v1.ICVSS|null} [cvssV2] VulnerabilityOccurrence cvssV2 * @property {grafeas.v1.VulnerabilityOccurrence.IVexAssessment|null} [vexAssessment] VulnerabilityOccurrence vexAssessment * @property {string|null} [extraDetails] VulnerabilityOccurrence extraDetails + * @property {grafeas.v1.IRisk|null} [risk] VulnerabilityOccurrence risk */ /** @@ -39118,7 +41478,7 @@ this.relatedUrls = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39234,6 +41594,14 @@ */ VulnerabilityOccurrence.prototype.extraDetails = ""; + /** + * VulnerabilityOccurrence risk. + * @member {grafeas.v1.IRisk|null|undefined} risk + * @memberof grafeas.v1.VulnerabilityOccurrence + * @instance + */ + VulnerabilityOccurrence.prototype.risk = null; + /** * Creates a new VulnerabilityOccurrence instance using the specified properties. * @function create @@ -39288,6 +41656,8 @@ $root.grafeas.v1.VulnerabilityOccurrence.VexAssessment.encode(message.vexAssessment, writer.uint32(/* id 13, wireType 2 =*/106).fork()).ldelim(); if (message.extraDetails != null && Object.hasOwnProperty.call(message, "extraDetails")) writer.uint32(/* id 14, wireType 2 =*/114).string(message.extraDetails); + if (message.risk != null && Object.hasOwnProperty.call(message, "risk")) + $root.grafeas.v1.Risk.encode(message.risk, writer.uint32(/* id 15, wireType 2 =*/122).fork()).ldelim(); return writer; }; @@ -39315,9 +41685,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VulnerabilityOccurrence.decode = function decode(reader, length, error) { + VulnerabilityOccurrence.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39337,13 +41711,13 @@ break; } case 10: { - message.cvssv3 = $root.grafeas.v1.CVSS.decode(reader, reader.uint32()); + message.cvssv3 = $root.grafeas.v1.CVSS.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.packageIssue && message.packageIssue.length)) message.packageIssue = []; - message.packageIssue.push($root.grafeas.v1.VulnerabilityOccurrence.PackageIssue.decode(reader, reader.uint32())); + message.packageIssue.push($root.grafeas.v1.VulnerabilityOccurrence.PackageIssue.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { @@ -39357,7 +41731,7 @@ case 7: { if (!(message.relatedUrls && message.relatedUrls.length)) message.relatedUrls = []; - message.relatedUrls.push($root.grafeas.v1.RelatedUrl.decode(reader, reader.uint32())); + message.relatedUrls.push($root.grafeas.v1.RelatedUrl.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { @@ -39373,19 +41747,23 @@ break; } case 12: { - message.cvssV2 = $root.grafeas.v1.CVSS.decode(reader, reader.uint32()); + message.cvssV2 = $root.grafeas.v1.CVSS.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.vexAssessment = $root.grafeas.v1.VulnerabilityOccurrence.VexAssessment.decode(reader, reader.uint32()); + message.vexAssessment = $root.grafeas.v1.VulnerabilityOccurrence.VexAssessment.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { message.extraDetails = reader.string(); break; } + case 15: { + message.risk = $root.grafeas.v1.Risk.decode(reader, reader.uint32(), undefined, long + 1); + break; + } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39416,9 +41794,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VulnerabilityOccurrence.verify = function verify(message) { + VulnerabilityOccurrence.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -39438,7 +41820,7 @@ if (typeof message.cvssScore !== "number") return "cvssScore: number expected"; if (message.cvssv3 != null && message.hasOwnProperty("cvssv3")) { - var error = $root.grafeas.v1.CVSS.verify(message.cvssv3); + var error = $root.grafeas.v1.CVSS.verify(message.cvssv3, long + 1); if (error) return "cvssv3." + error; } @@ -39446,7 +41828,7 @@ if (!Array.isArray(message.packageIssue)) return "packageIssue: array expected"; for (var i = 0; i < message.packageIssue.length; ++i) { - var error = $root.grafeas.v1.VulnerabilityOccurrence.PackageIssue.verify(message.packageIssue[i]); + var error = $root.grafeas.v1.VulnerabilityOccurrence.PackageIssue.verify(message.packageIssue[i], long + 1); if (error) return "packageIssue." + error; } @@ -39461,7 +41843,7 @@ if (!Array.isArray(message.relatedUrls)) return "relatedUrls: array expected"; for (var i = 0; i < message.relatedUrls.length; ++i) { - var error = $root.grafeas.v1.RelatedUrl.verify(message.relatedUrls[i]); + var error = $root.grafeas.v1.RelatedUrl.verify(message.relatedUrls[i], long + 1); if (error) return "relatedUrls." + error; } @@ -39491,18 +41873,23 @@ break; } if (message.cvssV2 != null && message.hasOwnProperty("cvssV2")) { - var error = $root.grafeas.v1.CVSS.verify(message.cvssV2); + var error = $root.grafeas.v1.CVSS.verify(message.cvssV2, long + 1); if (error) return "cvssV2." + error; } if (message.vexAssessment != null && message.hasOwnProperty("vexAssessment")) { - var error = $root.grafeas.v1.VulnerabilityOccurrence.VexAssessment.verify(message.vexAssessment); + var error = $root.grafeas.v1.VulnerabilityOccurrence.VexAssessment.verify(message.vexAssessment, long + 1); if (error) return "vexAssessment." + error; } if (message.extraDetails != null && message.hasOwnProperty("extraDetails")) if (!$util.isString(message.extraDetails)) return "extraDetails: string expected"; + if (message.risk != null && message.hasOwnProperty("risk")) { + var error = $root.grafeas.v1.Risk.verify(message.risk, long + 1); + if (error) + return "risk." + error; + } return null; }; @@ -39514,9 +41901,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityOccurrence} VulnerabilityOccurrence */ - VulnerabilityOccurrence.fromObject = function fromObject(object) { + VulnerabilityOccurrence.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityOccurrence) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityOccurrence(); if (object.type != null) message.type = String(object.type); @@ -39557,7 +41948,7 @@ if (object.cvssv3 != null) { if (typeof object.cvssv3 !== "object") throw TypeError(".grafeas.v1.VulnerabilityOccurrence.cvssv3: object expected"); - message.cvssv3 = $root.grafeas.v1.CVSS.fromObject(object.cvssv3); + message.cvssv3 = $root.grafeas.v1.CVSS.fromObject(object.cvssv3, long + 1); } if (object.packageIssue) { if (!Array.isArray(object.packageIssue)) @@ -39566,7 +41957,7 @@ for (var i = 0; i < object.packageIssue.length; ++i) { if (typeof object.packageIssue[i] !== "object") throw TypeError(".grafeas.v1.VulnerabilityOccurrence.packageIssue: object expected"); - message.packageIssue[i] = $root.grafeas.v1.VulnerabilityOccurrence.PackageIssue.fromObject(object.packageIssue[i]); + message.packageIssue[i] = $root.grafeas.v1.VulnerabilityOccurrence.PackageIssue.fromObject(object.packageIssue[i], long + 1); } } if (object.shortDescription != null) @@ -39580,7 +41971,7 @@ for (var i = 0; i < object.relatedUrls.length; ++i) { if (typeof object.relatedUrls[i] !== "object") throw TypeError(".grafeas.v1.VulnerabilityOccurrence.relatedUrls: object expected"); - message.relatedUrls[i] = $root.grafeas.v1.RelatedUrl.fromObject(object.relatedUrls[i]); + message.relatedUrls[i] = $root.grafeas.v1.RelatedUrl.fromObject(object.relatedUrls[i], long + 1); } } switch (object.effectiveSeverity) { @@ -39640,15 +42031,20 @@ if (object.cvssV2 != null) { if (typeof object.cvssV2 !== "object") throw TypeError(".grafeas.v1.VulnerabilityOccurrence.cvssV2: object expected"); - message.cvssV2 = $root.grafeas.v1.CVSS.fromObject(object.cvssV2); + message.cvssV2 = $root.grafeas.v1.CVSS.fromObject(object.cvssV2, long + 1); } if (object.vexAssessment != null) { if (typeof object.vexAssessment !== "object") throw TypeError(".grafeas.v1.VulnerabilityOccurrence.vexAssessment: object expected"); - message.vexAssessment = $root.grafeas.v1.VulnerabilityOccurrence.VexAssessment.fromObject(object.vexAssessment); + message.vexAssessment = $root.grafeas.v1.VulnerabilityOccurrence.VexAssessment.fromObject(object.vexAssessment, long + 1); } if (object.extraDetails != null) message.extraDetails = String(object.extraDetails); + if (object.risk != null) { + if (typeof object.risk !== "object") + throw TypeError(".grafeas.v1.VulnerabilityOccurrence.risk: object expected"); + message.risk = $root.grafeas.v1.Risk.fromObject(object.risk, long + 1); + } return message; }; @@ -39682,6 +42078,7 @@ object.cvssV2 = null; object.vexAssessment = null; object.extraDetails = ""; + object.risk = null; } if (message.type != null && message.hasOwnProperty("type")) object.type = message.type; @@ -39717,6 +42114,8 @@ object.vexAssessment = $root.grafeas.v1.VulnerabilityOccurrence.VexAssessment.toObject(message.vexAssessment, options); if (message.extraDetails != null && message.hasOwnProperty("extraDetails")) object.extraDetails = message.extraDetails; + if (message.risk != null && message.hasOwnProperty("risk")) + object.risk = $root.grafeas.v1.Risk.toObject(message.risk, options); return object; }; @@ -39776,7 +42175,7 @@ this.fileLocation = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39932,9 +42331,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PackageIssue.decode = function decode(reader, length, error) { + PackageIssue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityOccurrence.PackageIssue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39950,7 +42353,7 @@ break; } case 3: { - message.affectedVersion = $root.grafeas.v1.Version.decode(reader, reader.uint32()); + message.affectedVersion = $root.grafeas.v1.Version.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -39962,7 +42365,7 @@ break; } case 6: { - message.fixedVersion = $root.grafeas.v1.Version.decode(reader, reader.uint32()); + message.fixedVersion = $root.grafeas.v1.Version.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -39980,11 +42383,11 @@ case 10: { if (!(message.fileLocation && message.fileLocation.length)) message.fileLocation = []; - message.fileLocation.push($root.grafeas.v1.FileLocation.decode(reader, reader.uint32())); + message.fileLocation.push($root.grafeas.v1.FileLocation.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40015,9 +42418,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PackageIssue.verify = function verify(message) { + PackageIssue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.affectedCpeUri != null && message.hasOwnProperty("affectedCpeUri")) if (!$util.isString(message.affectedCpeUri)) return "affectedCpeUri: string expected"; @@ -40025,7 +42432,7 @@ if (!$util.isString(message.affectedPackage)) return "affectedPackage: string expected"; if (message.affectedVersion != null && message.hasOwnProperty("affectedVersion")) { - var error = $root.grafeas.v1.Version.verify(message.affectedVersion); + var error = $root.grafeas.v1.Version.verify(message.affectedVersion, long + 1); if (error) return "affectedVersion." + error; } @@ -40036,7 +42443,7 @@ if (!$util.isString(message.fixedPackage)) return "fixedPackage: string expected"; if (message.fixedVersion != null && message.hasOwnProperty("fixedVersion")) { - var error = $root.grafeas.v1.Version.verify(message.fixedVersion); + var error = $root.grafeas.v1.Version.verify(message.fixedVersion, long + 1); if (error) return "fixedVersion." + error; } @@ -40062,7 +42469,7 @@ if (!Array.isArray(message.fileLocation)) return "fileLocation: array expected"; for (var i = 0; i < message.fileLocation.length; ++i) { - var error = $root.grafeas.v1.FileLocation.verify(message.fileLocation[i]); + var error = $root.grafeas.v1.FileLocation.verify(message.fileLocation[i], long + 1); if (error) return "fileLocation." + error; } @@ -40078,9 +42485,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityOccurrence.PackageIssue} PackageIssue */ - PackageIssue.fromObject = function fromObject(object) { + PackageIssue.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityOccurrence.PackageIssue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityOccurrence.PackageIssue(); if (object.affectedCpeUri != null) message.affectedCpeUri = String(object.affectedCpeUri); @@ -40089,7 +42500,7 @@ if (object.affectedVersion != null) { if (typeof object.affectedVersion !== "object") throw TypeError(".grafeas.v1.VulnerabilityOccurrence.PackageIssue.affectedVersion: object expected"); - message.affectedVersion = $root.grafeas.v1.Version.fromObject(object.affectedVersion); + message.affectedVersion = $root.grafeas.v1.Version.fromObject(object.affectedVersion, long + 1); } if (object.fixedCpeUri != null) message.fixedCpeUri = String(object.fixedCpeUri); @@ -40098,7 +42509,7 @@ if (object.fixedVersion != null) { if (typeof object.fixedVersion !== "object") throw TypeError(".grafeas.v1.VulnerabilityOccurrence.PackageIssue.fixedVersion: object expected"); - message.fixedVersion = $root.grafeas.v1.Version.fromObject(object.fixedVersion); + message.fixedVersion = $root.grafeas.v1.Version.fromObject(object.fixedVersion, long + 1); } if (object.fixAvailable != null) message.fixAvailable = Boolean(object.fixAvailable); @@ -40143,7 +42554,7 @@ for (var i = 0; i < object.fileLocation.length; ++i) { if (typeof object.fileLocation[i] !== "object") throw TypeError(".grafeas.v1.VulnerabilityOccurrence.PackageIssue.fileLocation: object expected"); - message.fileLocation[i] = $root.grafeas.v1.FileLocation.fromObject(object.fileLocation[i]); + message.fileLocation[i] = $root.grafeas.v1.FileLocation.fromObject(object.fileLocation[i], long + 1); } } return message; @@ -40260,7 +42671,7 @@ this.remediations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40398,9 +42809,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VexAssessment.decode = function decode(reader, length, error) { + VexAssessment.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.VulnerabilityOccurrence.VexAssessment(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40418,7 +42833,7 @@ case 2: { if (!(message.relatedUris && message.relatedUris.length)) message.relatedUris = []; - message.relatedUris.push($root.grafeas.v1.RelatedUrl.decode(reader, reader.uint32())); + message.relatedUris.push($root.grafeas.v1.RelatedUrl.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -40438,15 +42853,15 @@ case 6: { if (!(message.remediations && message.remediations.length)) message.remediations = []; - message.remediations.push($root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.decode(reader, reader.uint32())); + message.remediations.push($root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { - message.justification = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.decode(reader, reader.uint32()); + message.justification = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40477,9 +42892,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VexAssessment.verify = function verify(message) { + VexAssessment.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.cve != null && message.hasOwnProperty("cve")) if (!$util.isString(message.cve)) return "cve: string expected"; @@ -40490,7 +42909,7 @@ if (!Array.isArray(message.relatedUris)) return "relatedUris: array expected"; for (var i = 0; i < message.relatedUris.length; ++i) { - var error = $root.grafeas.v1.RelatedUrl.verify(message.relatedUris[i]); + var error = $root.grafeas.v1.RelatedUrl.verify(message.relatedUris[i], long + 1); if (error) return "relatedUris." + error; } @@ -40520,13 +42939,13 @@ if (!Array.isArray(message.remediations)) return "remediations: array expected"; for (var i = 0; i < message.remediations.length; ++i) { - var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.verify(message.remediations[i]); + var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.verify(message.remediations[i], long + 1); if (error) return "remediations." + error; } } if (message.justification != null && message.hasOwnProperty("justification")) { - var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.verify(message.justification); + var error = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.verify(message.justification, long + 1); if (error) return "justification." + error; } @@ -40541,9 +42960,13 @@ * @param {Object.} object Plain object * @returns {grafeas.v1.VulnerabilityOccurrence.VexAssessment} VexAssessment */ - VexAssessment.fromObject = function fromObject(object) { + VexAssessment.fromObject = function fromObject(object, long) { if (object instanceof $root.grafeas.v1.VulnerabilityOccurrence.VexAssessment) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.grafeas.v1.VulnerabilityOccurrence.VexAssessment(); if (object.cve != null) message.cve = String(object.cve); @@ -40556,7 +42979,7 @@ for (var i = 0; i < object.relatedUris.length; ++i) { if (typeof object.relatedUris[i] !== "object") throw TypeError(".grafeas.v1.VulnerabilityOccurrence.VexAssessment.relatedUris: object expected"); - message.relatedUris[i] = $root.grafeas.v1.RelatedUrl.fromObject(object.relatedUris[i]); + message.relatedUris[i] = $root.grafeas.v1.RelatedUrl.fromObject(object.relatedUris[i], long + 1); } } if (object.noteName != null) @@ -40603,13 +43026,13 @@ for (var i = 0; i < object.remediations.length; ++i) { if (typeof object.remediations[i] !== "object") throw TypeError(".grafeas.v1.VulnerabilityOccurrence.VexAssessment.remediations: object expected"); - message.remediations[i] = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.fromObject(object.remediations[i]); + message.remediations[i] = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation.fromObject(object.remediations[i], long + 1); } } if (object.justification != null) { if (typeof object.justification !== "object") throw TypeError(".grafeas.v1.VulnerabilityOccurrence.VexAssessment.justification: object expected"); - message.justification = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.fromObject(object.justification); + message.justification = $root.grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification.fromObject(object.justification, long + 1); } return message; }; @@ -40699,6 +43122,715 @@ return VulnerabilityOccurrence; })(); + v1.Risk = (function() { + + /** + * Properties of a Risk. + * @memberof grafeas.v1 + * @interface IRisk + * @property {grafeas.v1.ICISAKnownExploitedVulnerabilities|null} [cisaKev] Risk cisaKev + * @property {grafeas.v1.IExploitPredictionScoringSystem|null} [epss] Risk epss + */ + + /** + * Constructs a new Risk. + * @memberof grafeas.v1 + * @classdesc Represents a Risk. + * @implements IRisk + * @constructor + * @param {grafeas.v1.IRisk=} [properties] Properties to set + */ + function Risk(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null && keys[i] !== "__proto__") + this[keys[i]] = properties[keys[i]]; + } + + /** + * Risk cisaKev. + * @member {grafeas.v1.ICISAKnownExploitedVulnerabilities|null|undefined} cisaKev + * @memberof grafeas.v1.Risk + * @instance + */ + Risk.prototype.cisaKev = null; + + /** + * Risk epss. + * @member {grafeas.v1.IExploitPredictionScoringSystem|null|undefined} epss + * @memberof grafeas.v1.Risk + * @instance + */ + Risk.prototype.epss = null; + + /** + * Creates a new Risk instance using the specified properties. + * @function create + * @memberof grafeas.v1.Risk + * @static + * @param {grafeas.v1.IRisk=} [properties] Properties to set + * @returns {grafeas.v1.Risk} Risk instance + */ + Risk.create = function create(properties) { + return new Risk(properties); + }; + + /** + * Encodes the specified Risk message. Does not implicitly {@link grafeas.v1.Risk.verify|verify} messages. + * @function encode + * @memberof grafeas.v1.Risk + * @static + * @param {grafeas.v1.IRisk} message Risk message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Risk.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.cisaKev != null && Object.hasOwnProperty.call(message, "cisaKev")) + $root.grafeas.v1.CISAKnownExploitedVulnerabilities.encode(message.cisaKev, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.epss != null && Object.hasOwnProperty.call(message, "epss")) + $root.grafeas.v1.ExploitPredictionScoringSystem.encode(message.epss, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified Risk message, length delimited. Does not implicitly {@link grafeas.v1.Risk.verify|verify} messages. + * @function encodeDelimited + * @memberof grafeas.v1.Risk + * @static + * @param {grafeas.v1.IRisk} message Risk message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Risk.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Risk message from the specified reader or buffer. + * @function decode + * @memberof grafeas.v1.Risk + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {grafeas.v1.Risk} Risk + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Risk.decode = function decode(reader, length, error, long) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Risk(); + while (reader.pos < end) { + var tag = reader.uint32(); + if (tag === error) + break; + switch (tag >>> 3) { + case 1: { + message.cisaKev = $root.grafeas.v1.CISAKnownExploitedVulnerabilities.decode(reader, reader.uint32(), undefined, long + 1); + break; + } + case 2: { + message.epss = $root.grafeas.v1.ExploitPredictionScoringSystem.decode(reader, reader.uint32(), undefined, long + 1); + break; + } + default: + reader.skipType(tag & 7, long); + break; + } + } + return message; + }; + + /** + * Decodes a Risk message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof grafeas.v1.Risk + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {grafeas.v1.Risk} Risk + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Risk.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Risk message. + * @function verify + * @memberof grafeas.v1.Risk + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Risk.verify = function verify(message, long) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; + if (message.cisaKev != null && message.hasOwnProperty("cisaKev")) { + var error = $root.grafeas.v1.CISAKnownExploitedVulnerabilities.verify(message.cisaKev, long + 1); + if (error) + return "cisaKev." + error; + } + if (message.epss != null && message.hasOwnProperty("epss")) { + var error = $root.grafeas.v1.ExploitPredictionScoringSystem.verify(message.epss, long + 1); + if (error) + return "epss." + error; + } + return null; + }; + + /** + * Creates a Risk message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof grafeas.v1.Risk + * @static + * @param {Object.} object Plain object + * @returns {grafeas.v1.Risk} Risk + */ + Risk.fromObject = function fromObject(object, long) { + if (object instanceof $root.grafeas.v1.Risk) + return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); + var message = new $root.grafeas.v1.Risk(); + if (object.cisaKev != null) { + if (typeof object.cisaKev !== "object") + throw TypeError(".grafeas.v1.Risk.cisaKev: object expected"); + message.cisaKev = $root.grafeas.v1.CISAKnownExploitedVulnerabilities.fromObject(object.cisaKev, long + 1); + } + if (object.epss != null) { + if (typeof object.epss !== "object") + throw TypeError(".grafeas.v1.Risk.epss: object expected"); + message.epss = $root.grafeas.v1.ExploitPredictionScoringSystem.fromObject(object.epss, long + 1); + } + return message; + }; + + /** + * Creates a plain object from a Risk message. Also converts values to other types if specified. + * @function toObject + * @memberof grafeas.v1.Risk + * @static + * @param {grafeas.v1.Risk} message Risk + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Risk.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.cisaKev = null; + object.epss = null; + } + if (message.cisaKev != null && message.hasOwnProperty("cisaKev")) + object.cisaKev = $root.grafeas.v1.CISAKnownExploitedVulnerabilities.toObject(message.cisaKev, options); + if (message.epss != null && message.hasOwnProperty("epss")) + object.epss = $root.grafeas.v1.ExploitPredictionScoringSystem.toObject(message.epss, options); + return object; + }; + + /** + * Converts this Risk to JSON. + * @function toJSON + * @memberof grafeas.v1.Risk + * @instance + * @returns {Object.} JSON object + */ + Risk.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for Risk + * @function getTypeUrl + * @memberof grafeas.v1.Risk + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Risk.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/grafeas.v1.Risk"; + }; + + return Risk; + })(); + + v1.CISAKnownExploitedVulnerabilities = (function() { + + /** + * Properties of a CISAKnownExploitedVulnerabilities. + * @memberof grafeas.v1 + * @interface ICISAKnownExploitedVulnerabilities + * @property {string|null} [knownRansomwareCampaignUse] CISAKnownExploitedVulnerabilities knownRansomwareCampaignUse + */ + + /** + * Constructs a new CISAKnownExploitedVulnerabilities. + * @memberof grafeas.v1 + * @classdesc Represents a CISAKnownExploitedVulnerabilities. + * @implements ICISAKnownExploitedVulnerabilities + * @constructor + * @param {grafeas.v1.ICISAKnownExploitedVulnerabilities=} [properties] Properties to set + */ + function CISAKnownExploitedVulnerabilities(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null && keys[i] !== "__proto__") + this[keys[i]] = properties[keys[i]]; + } + + /** + * CISAKnownExploitedVulnerabilities knownRansomwareCampaignUse. + * @member {string} knownRansomwareCampaignUse + * @memberof grafeas.v1.CISAKnownExploitedVulnerabilities + * @instance + */ + CISAKnownExploitedVulnerabilities.prototype.knownRansomwareCampaignUse = ""; + + /** + * Creates a new CISAKnownExploitedVulnerabilities instance using the specified properties. + * @function create + * @memberof grafeas.v1.CISAKnownExploitedVulnerabilities + * @static + * @param {grafeas.v1.ICISAKnownExploitedVulnerabilities=} [properties] Properties to set + * @returns {grafeas.v1.CISAKnownExploitedVulnerabilities} CISAKnownExploitedVulnerabilities instance + */ + CISAKnownExploitedVulnerabilities.create = function create(properties) { + return new CISAKnownExploitedVulnerabilities(properties); + }; + + /** + * Encodes the specified CISAKnownExploitedVulnerabilities message. Does not implicitly {@link grafeas.v1.CISAKnownExploitedVulnerabilities.verify|verify} messages. + * @function encode + * @memberof grafeas.v1.CISAKnownExploitedVulnerabilities + * @static + * @param {grafeas.v1.ICISAKnownExploitedVulnerabilities} message CISAKnownExploitedVulnerabilities message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CISAKnownExploitedVulnerabilities.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.knownRansomwareCampaignUse != null && Object.hasOwnProperty.call(message, "knownRansomwareCampaignUse")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.knownRansomwareCampaignUse); + return writer; + }; + + /** + * Encodes the specified CISAKnownExploitedVulnerabilities message, length delimited. Does not implicitly {@link grafeas.v1.CISAKnownExploitedVulnerabilities.verify|verify} messages. + * @function encodeDelimited + * @memberof grafeas.v1.CISAKnownExploitedVulnerabilities + * @static + * @param {grafeas.v1.ICISAKnownExploitedVulnerabilities} message CISAKnownExploitedVulnerabilities message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CISAKnownExploitedVulnerabilities.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CISAKnownExploitedVulnerabilities message from the specified reader or buffer. + * @function decode + * @memberof grafeas.v1.CISAKnownExploitedVulnerabilities + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {grafeas.v1.CISAKnownExploitedVulnerabilities} CISAKnownExploitedVulnerabilities + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CISAKnownExploitedVulnerabilities.decode = function decode(reader, length, error, long) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.CISAKnownExploitedVulnerabilities(); + while (reader.pos < end) { + var tag = reader.uint32(); + if (tag === error) + break; + switch (tag >>> 3) { + case 1: { + message.knownRansomwareCampaignUse = reader.string(); + break; + } + default: + reader.skipType(tag & 7, long); + break; + } + } + return message; + }; + + /** + * Decodes a CISAKnownExploitedVulnerabilities message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof grafeas.v1.CISAKnownExploitedVulnerabilities + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {grafeas.v1.CISAKnownExploitedVulnerabilities} CISAKnownExploitedVulnerabilities + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CISAKnownExploitedVulnerabilities.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CISAKnownExploitedVulnerabilities message. + * @function verify + * @memberof grafeas.v1.CISAKnownExploitedVulnerabilities + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CISAKnownExploitedVulnerabilities.verify = function verify(message, long) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; + if (message.knownRansomwareCampaignUse != null && message.hasOwnProperty("knownRansomwareCampaignUse")) + if (!$util.isString(message.knownRansomwareCampaignUse)) + return "knownRansomwareCampaignUse: string expected"; + return null; + }; + + /** + * Creates a CISAKnownExploitedVulnerabilities message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof grafeas.v1.CISAKnownExploitedVulnerabilities + * @static + * @param {Object.} object Plain object + * @returns {grafeas.v1.CISAKnownExploitedVulnerabilities} CISAKnownExploitedVulnerabilities + */ + CISAKnownExploitedVulnerabilities.fromObject = function fromObject(object, long) { + if (object instanceof $root.grafeas.v1.CISAKnownExploitedVulnerabilities) + return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); + var message = new $root.grafeas.v1.CISAKnownExploitedVulnerabilities(); + if (object.knownRansomwareCampaignUse != null) + message.knownRansomwareCampaignUse = String(object.knownRansomwareCampaignUse); + return message; + }; + + /** + * Creates a plain object from a CISAKnownExploitedVulnerabilities message. Also converts values to other types if specified. + * @function toObject + * @memberof grafeas.v1.CISAKnownExploitedVulnerabilities + * @static + * @param {grafeas.v1.CISAKnownExploitedVulnerabilities} message CISAKnownExploitedVulnerabilities + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CISAKnownExploitedVulnerabilities.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.knownRansomwareCampaignUse = ""; + if (message.knownRansomwareCampaignUse != null && message.hasOwnProperty("knownRansomwareCampaignUse")) + object.knownRansomwareCampaignUse = message.knownRansomwareCampaignUse; + return object; + }; + + /** + * Converts this CISAKnownExploitedVulnerabilities to JSON. + * @function toJSON + * @memberof grafeas.v1.CISAKnownExploitedVulnerabilities + * @instance + * @returns {Object.} JSON object + */ + CISAKnownExploitedVulnerabilities.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for CISAKnownExploitedVulnerabilities + * @function getTypeUrl + * @memberof grafeas.v1.CISAKnownExploitedVulnerabilities + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CISAKnownExploitedVulnerabilities.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/grafeas.v1.CISAKnownExploitedVulnerabilities"; + }; + + return CISAKnownExploitedVulnerabilities; + })(); + + v1.ExploitPredictionScoringSystem = (function() { + + /** + * Properties of an ExploitPredictionScoringSystem. + * @memberof grafeas.v1 + * @interface IExploitPredictionScoringSystem + * @property {number|null} [percentile] ExploitPredictionScoringSystem percentile + * @property {number|null} [score] ExploitPredictionScoringSystem score + */ + + /** + * Constructs a new ExploitPredictionScoringSystem. + * @memberof grafeas.v1 + * @classdesc Represents an ExploitPredictionScoringSystem. + * @implements IExploitPredictionScoringSystem + * @constructor + * @param {grafeas.v1.IExploitPredictionScoringSystem=} [properties] Properties to set + */ + function ExploitPredictionScoringSystem(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null && keys[i] !== "__proto__") + this[keys[i]] = properties[keys[i]]; + } + + /** + * ExploitPredictionScoringSystem percentile. + * @member {number} percentile + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @instance + */ + ExploitPredictionScoringSystem.prototype.percentile = 0; + + /** + * ExploitPredictionScoringSystem score. + * @member {number} score + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @instance + */ + ExploitPredictionScoringSystem.prototype.score = 0; + + /** + * Creates a new ExploitPredictionScoringSystem instance using the specified properties. + * @function create + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @static + * @param {grafeas.v1.IExploitPredictionScoringSystem=} [properties] Properties to set + * @returns {grafeas.v1.ExploitPredictionScoringSystem} ExploitPredictionScoringSystem instance + */ + ExploitPredictionScoringSystem.create = function create(properties) { + return new ExploitPredictionScoringSystem(properties); + }; + + /** + * Encodes the specified ExploitPredictionScoringSystem message. Does not implicitly {@link grafeas.v1.ExploitPredictionScoringSystem.verify|verify} messages. + * @function encode + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @static + * @param {grafeas.v1.IExploitPredictionScoringSystem} message ExploitPredictionScoringSystem message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExploitPredictionScoringSystem.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.percentile != null && Object.hasOwnProperty.call(message, "percentile")) + writer.uint32(/* id 1, wireType 1 =*/9).double(message.percentile); + if (message.score != null && Object.hasOwnProperty.call(message, "score")) + writer.uint32(/* id 2, wireType 1 =*/17).double(message.score); + return writer; + }; + + /** + * Encodes the specified ExploitPredictionScoringSystem message, length delimited. Does not implicitly {@link grafeas.v1.ExploitPredictionScoringSystem.verify|verify} messages. + * @function encodeDelimited + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @static + * @param {grafeas.v1.IExploitPredictionScoringSystem} message ExploitPredictionScoringSystem message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExploitPredictionScoringSystem.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an ExploitPredictionScoringSystem message from the specified reader or buffer. + * @function decode + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {grafeas.v1.ExploitPredictionScoringSystem} ExploitPredictionScoringSystem + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExploitPredictionScoringSystem.decode = function decode(reader, length, error, long) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.ExploitPredictionScoringSystem(); + while (reader.pos < end) { + var tag = reader.uint32(); + if (tag === error) + break; + switch (tag >>> 3) { + case 1: { + message.percentile = reader.double(); + break; + } + case 2: { + message.score = reader.double(); + break; + } + default: + reader.skipType(tag & 7, long); + break; + } + } + return message; + }; + + /** + * Decodes an ExploitPredictionScoringSystem message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {grafeas.v1.ExploitPredictionScoringSystem} ExploitPredictionScoringSystem + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExploitPredictionScoringSystem.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an ExploitPredictionScoringSystem message. + * @function verify + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ExploitPredictionScoringSystem.verify = function verify(message, long) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; + if (message.percentile != null && message.hasOwnProperty("percentile")) + if (typeof message.percentile !== "number") + return "percentile: number expected"; + if (message.score != null && message.hasOwnProperty("score")) + if (typeof message.score !== "number") + return "score: number expected"; + return null; + }; + + /** + * Creates an ExploitPredictionScoringSystem message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @static + * @param {Object.} object Plain object + * @returns {grafeas.v1.ExploitPredictionScoringSystem} ExploitPredictionScoringSystem + */ + ExploitPredictionScoringSystem.fromObject = function fromObject(object, long) { + if (object instanceof $root.grafeas.v1.ExploitPredictionScoringSystem) + return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); + var message = new $root.grafeas.v1.ExploitPredictionScoringSystem(); + if (object.percentile != null) + message.percentile = Number(object.percentile); + if (object.score != null) + message.score = Number(object.score); + return message; + }; + + /** + * Creates a plain object from an ExploitPredictionScoringSystem message. Also converts values to other types if specified. + * @function toObject + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @static + * @param {grafeas.v1.ExploitPredictionScoringSystem} message ExploitPredictionScoringSystem + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ExploitPredictionScoringSystem.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.percentile = 0; + object.score = 0; + } + if (message.percentile != null && message.hasOwnProperty("percentile")) + object.percentile = options.json && !isFinite(message.percentile) ? String(message.percentile) : message.percentile; + if (message.score != null && message.hasOwnProperty("score")) + object.score = options.json && !isFinite(message.score) ? String(message.score) : message.score; + return object; + }; + + /** + * Converts this ExploitPredictionScoringSystem to JSON. + * @function toJSON + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @instance + * @returns {Object.} JSON object + */ + ExploitPredictionScoringSystem.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for ExploitPredictionScoringSystem + * @function getTypeUrl + * @memberof grafeas.v1.ExploitPredictionScoringSystem + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ExploitPredictionScoringSystem.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/grafeas.v1.ExploitPredictionScoringSystem"; + }; + + return ExploitPredictionScoringSystem; + })(); + return v1; })(); @@ -40744,7 +43876,7 @@ function Any(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40819,9 +43951,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Any.decode = function decode(reader, length, error) { + Any.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Any(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40837,7 +43973,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40868,9 +44004,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Any.verify = function verify(message) { + Any.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type_url != null && message.hasOwnProperty("type_url")) if (!$util.isString(message.type_url)) return "type_url: string expected"; @@ -40888,9 +44028,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Any} Any */ - Any.fromObject = function fromObject(object) { + Any.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Any) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Any(); if (object.type_url != null) message.type_url = String(object.type_url); @@ -40982,7 +44126,7 @@ function Timestamp(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41057,9 +44201,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Timestamp.decode = function decode(reader, length, error) { + Timestamp.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Timestamp(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41075,7 +44223,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41106,9 +44254,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Timestamp.verify = function verify(message) { + Timestamp.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -41126,9 +44278,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Timestamp} Timestamp */ - Timestamp.fromObject = function fromObject(object) { + Timestamp.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Timestamp) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Timestamp(); if (object.seconds != null) if ($util.Long) @@ -41225,7 +44381,7 @@ this.fields = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41293,9 +44449,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Struct.decode = function decode(reader, length, error) { + Struct.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Struct(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -41315,18 +44475,20 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.fields, key); message.fields[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41357,15 +44519,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Struct.verify = function verify(message) { + Struct.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fields != null && message.hasOwnProperty("fields")) { if (!$util.isObject(message.fields)) return "fields: object expected"; var key = Object.keys(message.fields); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.fields[key[i]]); + var error = $root.google.protobuf.Value.verify(message.fields[key[i]], long + 1); if (error) return "fields." + error; } @@ -41381,18 +44547,24 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Struct} Struct */ - Struct.fromObject = function fromObject(object) { + Struct.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Struct) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Struct(); if (object.fields) { if (typeof object.fields !== "object") throw TypeError(".google.protobuf.Struct.fields: object expected"); message.fields = {}; for (var keys = Object.keys(object.fields), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.fields, keys[i]); if (typeof object.fields[keys[i]] !== "object") throw TypeError(".google.protobuf.Struct.fields: object expected"); - message.fields[keys[i]] = $root.google.protobuf.Value.fromObject(object.fields[keys[i]]); + message.fields[keys[i]] = $root.google.protobuf.Value.fromObject(object.fields[keys[i]], long + 1); } } return message; @@ -41416,8 +44588,11 @@ var keys2; if (message.fields && (keys2 = Object.keys(message.fields)).length) { object.fields = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.fields, keys2[j]); object.fields[keys2[j]] = $root.google.protobuf.Value.toObject(message.fields[keys2[j]], options); + } } return object; }; @@ -41476,7 +44651,7 @@ function Value(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41605,9 +44780,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Value.decode = function decode(reader, length, error) { + Value.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Value(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41631,15 +44810,15 @@ break; } case 5: { - message.structValue = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + message.structValue = $root.google.protobuf.Struct.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.listValue = $root.google.protobuf.ListValue.decode(reader, reader.uint32()); + message.listValue = $root.google.protobuf.ListValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41670,9 +44849,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Value.verify = function verify(message) { + Value.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.nullValue != null && message.hasOwnProperty("nullValue")) { properties.kind = 1; @@ -41709,7 +44892,7 @@ return "kind: multiple values"; properties.kind = 1; { - var error = $root.google.protobuf.Struct.verify(message.structValue); + var error = $root.google.protobuf.Struct.verify(message.structValue, long + 1); if (error) return "structValue." + error; } @@ -41719,7 +44902,7 @@ return "kind: multiple values"; properties.kind = 1; { - var error = $root.google.protobuf.ListValue.verify(message.listValue); + var error = $root.google.protobuf.ListValue.verify(message.listValue, long + 1); if (error) return "listValue." + error; } @@ -41735,9 +44918,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Value} Value */ - Value.fromObject = function fromObject(object) { + Value.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Value) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Value(); switch (object.nullValue) { default: @@ -41760,12 +44947,12 @@ if (object.structValue != null) { if (typeof object.structValue !== "object") throw TypeError(".google.protobuf.Value.structValue: object expected"); - message.structValue = $root.google.protobuf.Struct.fromObject(object.structValue); + message.structValue = $root.google.protobuf.Struct.fromObject(object.structValue, long + 1); } if (object.listValue != null) { if (typeof object.listValue !== "object") throw TypeError(".google.protobuf.Value.listValue: object expected"); - message.listValue = $root.google.protobuf.ListValue.fromObject(object.listValue); + message.listValue = $root.google.protobuf.ListValue.fromObject(object.listValue, long + 1); } return message; }; @@ -41878,7 +45065,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41944,9 +45131,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListValue.decode = function decode(reader, length, error) { + ListValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ListValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41956,11 +45147,11 @@ case 1: { if (!(message.values && message.values.length)) message.values = []; - message.values.push($root.google.protobuf.Value.decode(reader, reader.uint32())); + message.values.push($root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41991,14 +45182,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListValue.verify = function verify(message) { + ListValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; for (var i = 0; i < message.values.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.values[i]); + var error = $root.google.protobuf.Value.verify(message.values[i], long + 1); if (error) return "values." + error; } @@ -42014,9 +45209,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ListValue} ListValue */ - ListValue.fromObject = function fromObject(object) { + ListValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ListValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ListValue(); if (object.values) { if (!Array.isArray(object.values)) @@ -42025,7 +45224,7 @@ for (var i = 0; i < object.values.length; ++i) { if (typeof object.values[i] !== "object") throw TypeError(".google.protobuf.ListValue.values: object expected"); - message.values[i] = $root.google.protobuf.Value.fromObject(object.values[i]); + message.values[i] = $root.google.protobuf.Value.fromObject(object.values[i], long + 1); } } return message; @@ -42104,7 +45303,7 @@ this.file = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42170,9 +45369,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorSet.decode = function decode(reader, length, error) { + FileDescriptorSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42182,11 +45385,11 @@ case 1: { if (!(message.file && message.file.length)) message.file = []; - message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); + message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42217,14 +45420,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorSet.verify = function verify(message) { + FileDescriptorSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.file != null && message.hasOwnProperty("file")) { if (!Array.isArray(message.file)) return "file: array expected"; for (var i = 0; i < message.file.length; ++i) { - var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); + var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i], long + 1); if (error) return "file." + error; } @@ -42240,9 +45447,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet */ - FileDescriptorSet.fromObject = function fromObject(object) { + FileDescriptorSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorSet(); if (object.file) { if (!Array.isArray(object.file)) @@ -42251,7 +45462,7 @@ for (var i = 0; i < object.file.length; ++i) { if (typeof object.file[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); - message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); + message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i], long + 1); } } return message; @@ -42384,7 +45595,7 @@ this.extension = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42587,9 +45798,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorProto.decode = function decode(reader, length, error) { + FileDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42641,33 +45856,33 @@ case 4: { if (!(message.messageType && message.messageType.length)) message.messageType = []; - message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.service && message.service.length)) message.service = []; - message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); + message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { - message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -42679,7 +45894,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42710,9 +45925,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorProto.verify = function verify(message) { + FileDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -42751,7 +45970,7 @@ if (!Array.isArray(message.messageType)) return "messageType: array expected"; for (var i = 0; i < message.messageType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i], long + 1); if (error) return "messageType." + error; } @@ -42760,7 +45979,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -42769,7 +45988,7 @@ if (!Array.isArray(message.service)) return "service: array expected"; for (var i = 0; i < message.service.length; ++i) { - var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); + var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i], long + 1); if (error) return "service." + error; } @@ -42778,18 +45997,18 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FileOptions.verify(message.options); + var error = $root.google.protobuf.FileOptions.verify(message.options, long + 1); if (error) return "options." + error; } if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { - var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); + var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo, long + 1); if (error) return "sourceCodeInfo." + error; } @@ -42825,9 +46044,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto */ - FileDescriptorProto.fromObject = function fromObject(object) { + FileDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -42868,7 +46091,7 @@ for (var i = 0; i < object.messageType.length; ++i) { if (typeof object.messageType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); - message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); + message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i], long + 1); } } if (object.enumType) { @@ -42878,7 +46101,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.service) { @@ -42888,7 +46111,7 @@ for (var i = 0; i < object.service.length; ++i) { if (typeof object.service[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); - message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); + message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i], long + 1); } } if (object.extension) { @@ -42898,18 +46121,18 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FileOptions.fromObject(object.options); + message.options = $root.google.protobuf.FileOptions.fromObject(object.options, long + 1); } if (object.sourceCodeInfo != null) { if (typeof object.sourceCodeInfo !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo, long + 1); } if (object.syntax != null) message.syntax = String(object.syntax); @@ -43125,7 +46348,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43298,9 +46521,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DescriptorProto.decode = function decode(reader, length, error) { + DescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43314,47 +46541,47 @@ case 2: { if (!(message.field && message.field.length)) message.field = []; - message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.nestedType && message.nestedType.length)) message.nestedType = []; - message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.extensionRange && message.extensionRange.length)) message.extensionRange = []; - message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); + message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { if (!(message.oneofDecl && message.oneofDecl.length)) message.oneofDecl = []; - message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); + message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { - message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 10: { @@ -43368,7 +46595,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43399,9 +46626,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DescriptorProto.verify = function verify(message) { + DescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -43409,7 +46640,7 @@ if (!Array.isArray(message.field)) return "field: array expected"; for (var i = 0; i < message.field.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i], long + 1); if (error) return "field." + error; } @@ -43418,7 +46649,7 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } @@ -43427,7 +46658,7 @@ if (!Array.isArray(message.nestedType)) return "nestedType: array expected"; for (var i = 0; i < message.nestedType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i], long + 1); if (error) return "nestedType." + error; } @@ -43436,7 +46667,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -43445,7 +46676,7 @@ if (!Array.isArray(message.extensionRange)) return "extensionRange: array expected"; for (var i = 0; i < message.extensionRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); + var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i], long + 1); if (error) return "extensionRange." + error; } @@ -43454,13 +46685,13 @@ if (!Array.isArray(message.oneofDecl)) return "oneofDecl: array expected"; for (var i = 0; i < message.oneofDecl.length; ++i) { - var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); + var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i], long + 1); if (error) return "oneofDecl." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MessageOptions.verify(message.options); + var error = $root.google.protobuf.MessageOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -43468,7 +46699,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -43500,9 +46731,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto} DescriptorProto */ - DescriptorProto.fromObject = function fromObject(object) { + DescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -43513,7 +46748,7 @@ for (var i = 0; i < object.field.length; ++i) { if (typeof object.field[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); - message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); + message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i], long + 1); } } if (object.extension) { @@ -43523,7 +46758,7 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.nestedType) { @@ -43533,7 +46768,7 @@ for (var i = 0; i < object.nestedType.length; ++i) { if (typeof object.nestedType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); - message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); + message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i], long + 1); } } if (object.enumType) { @@ -43543,7 +46778,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.extensionRange) { @@ -43553,7 +46788,7 @@ for (var i = 0; i < object.extensionRange.length; ++i) { if (typeof object.extensionRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); - message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); + message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i], long + 1); } } if (object.oneofDecl) { @@ -43563,13 +46798,13 @@ for (var i = 0; i < object.oneofDecl.length; ++i) { if (typeof object.oneofDecl[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); - message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); + message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); + message.options = $root.google.protobuf.MessageOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -43578,7 +46813,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -43736,7 +46971,7 @@ function ExtensionRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43821,9 +47056,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRange.decode = function decode(reader, length, error) { + ExtensionRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43839,11 +47078,11 @@ break; } case 3: { - message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43874,9 +47113,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRange.verify = function verify(message) { + ExtensionRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -43884,7 +47127,7 @@ if (!$util.isInteger(message.end)) return "end: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); + var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -43899,9 +47142,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange */ - ExtensionRange.fromObject = function fromObject(object) { + ExtensionRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); if (object.start != null) message.start = object.start | 0; @@ -43910,7 +47157,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); - message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); + message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options, long + 1); } return message; }; @@ -43992,7 +47239,7 @@ function ReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44067,9 +47314,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReservedRange.decode = function decode(reader, length, error) { + ReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44085,7 +47336,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44116,9 +47367,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReservedRange.verify = function verify(message) { + ReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -44136,9 +47391,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange */ - ReservedRange.fromObject = function fromObject(object) { + ReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -44228,7 +47487,7 @@ this.declaration = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44325,9 +47584,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRangeOptions.decode = function decode(reader, length, error) { + ExtensionRangeOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44337,17 +47600,17 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.declaration && message.declaration.length)) message.declaration = []; - message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32())); + message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -44355,7 +47618,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44386,14 +47649,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRangeOptions.verify = function verify(message) { + ExtensionRangeOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -44402,13 +47669,13 @@ if (!Array.isArray(message.declaration)) return "declaration: array expected"; for (var i = 0; i < message.declaration.length; ++i) { - var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i]); + var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i], long + 1); if (error) return "declaration." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -44431,9 +47698,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions */ - ExtensionRangeOptions.fromObject = function fromObject(object) { + ExtensionRangeOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions(); if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -44442,7 +47713,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object.declaration) { @@ -44452,13 +47723,13 @@ for (var i = 0; i < object.declaration.length; ++i) { if (typeof object.declaration[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected"); - message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i]); + message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } switch (object.verification) { case "DECLARATION": @@ -44567,7 +47838,7 @@ function Declaration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44672,9 +47943,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Declaration.decode = function decode(reader, length, error) { + Declaration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44702,7 +47977,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44733,9 +48008,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Declaration.verify = function verify(message) { + Declaration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.number != null && message.hasOwnProperty("number")) if (!$util.isInteger(message.number)) return "number: integer expected"; @@ -44762,9 +48041,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration */ - Declaration.fromObject = function fromObject(object) { + Declaration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions.Declaration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); if (object.number != null) message.number = object.number | 0; @@ -44888,7 +48171,7 @@ function FieldDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45053,9 +48336,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldDescriptorProto.decode = function decode(reader, length, error) { + FieldDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45099,7 +48386,7 @@ break; } case 8: { - message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { @@ -45107,7 +48394,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45138,9 +48425,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldDescriptorProto.verify = function verify(message) { + FieldDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -45196,7 +48487,7 @@ if (!$util.isString(message.jsonName)) return "jsonName: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FieldOptions.verify(message.options); + var error = $root.google.protobuf.FieldOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -45214,9 +48505,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto */ - FieldDescriptorProto.fromObject = function fromObject(object) { + FieldDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -45335,7 +48630,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); + message.options = $root.google.protobuf.FieldOptions.fromObject(object.options, long + 1); } if (object.proto3Optional != null) message.proto3Optional = Boolean(object.proto3Optional); @@ -45505,7 +48800,7 @@ function OneofDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45580,9 +48875,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofDescriptorProto.decode = function decode(reader, length, error) { + OneofDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45594,11 +48893,11 @@ break; } case 2: { - message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45629,14 +48928,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofDescriptorProto.verify = function verify(message) { + OneofDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.OneofOptions.verify(message.options); + var error = $root.google.protobuf.OneofOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -45651,16 +48954,20 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto */ - OneofDescriptorProto.fromObject = function fromObject(object) { + OneofDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofDescriptorProto(); if (object.name != null) message.name = String(object.name); if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); + message.options = $root.google.protobuf.OneofOptions.fromObject(object.options, long + 1); } return message; }; @@ -45746,7 +49053,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45864,9 +49171,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumDescriptorProto.decode = function decode(reader, length, error) { + EnumDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45880,17 +49191,17 @@ case 2: { if (!(message.value && message.value.length)) message.value = []; - message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); + message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { @@ -45904,7 +49215,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45935,9 +49246,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumDescriptorProto.verify = function verify(message) { + EnumDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -45945,13 +49260,13 @@ if (!Array.isArray(message.value)) return "value: array expected"; for (var i = 0; i < message.value.length; ++i) { - var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); + var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i], long + 1); if (error) return "value." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumOptions.verify(message.options); + var error = $root.google.protobuf.EnumOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -45959,7 +49274,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -45991,9 +49306,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto */ - EnumDescriptorProto.fromObject = function fromObject(object) { + EnumDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -46004,13 +49323,13 @@ for (var i = 0; i < object.value.length; ++i) { if (typeof object.value[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); - message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); + message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -46019,7 +49338,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -46146,7 +49465,7 @@ function EnumReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46221,9 +49540,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumReservedRange.decode = function decode(reader, length, error) { + EnumReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46239,7 +49562,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46270,9 +49593,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumReservedRange.verify = function verify(message) { + EnumReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -46290,9 +49617,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange */ - EnumReservedRange.fromObject = function fromObject(object) { + EnumReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -46379,7 +49710,7 @@ function EnumValueDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46464,9 +49795,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueDescriptorProto.decode = function decode(reader, length, error) { + EnumValueDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46482,11 +49817,11 @@ break; } case 3: { - message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46517,9 +49852,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueDescriptorProto.verify = function verify(message) { + EnumValueDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -46527,7 +49866,7 @@ if (!$util.isInteger(message.number)) return "number: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumValueOptions.verify(message.options); + var error = $root.google.protobuf.EnumValueOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -46542,9 +49881,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto */ - EnumValueDescriptorProto.fromObject = function fromObject(object) { + EnumValueDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -46553,7 +49896,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options, long + 1); } return message; }; @@ -46637,7 +49980,7 @@ this.method = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46723,9 +50066,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceDescriptorProto.decode = function decode(reader, length, error) { + ServiceDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46739,15 +50086,15 @@ case 2: { if (!(message.method && message.method.length)) message.method = []; - message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); + message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46778,9 +50125,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceDescriptorProto.verify = function verify(message) { + ServiceDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -46788,13 +50139,13 @@ if (!Array.isArray(message.method)) return "method: array expected"; for (var i = 0; i < message.method.length; ++i) { - var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); + var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i], long + 1); if (error) return "method." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ServiceOptions.verify(message.options); + var error = $root.google.protobuf.ServiceOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -46809,9 +50160,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto */ - ServiceDescriptorProto.fromObject = function fromObject(object) { + ServiceDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -46822,13 +50177,13 @@ for (var i = 0; i < object.method.length; ++i) { if (typeof object.method[i] !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); - message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); + message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); + message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options, long + 1); } return message; }; @@ -46918,7 +50273,7 @@ function MethodDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47033,9 +50388,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodDescriptorProto.decode = function decode(reader, length, error) { + MethodDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47055,7 +50414,7 @@ break; } case 4: { - message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -47067,7 +50426,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47098,9 +50457,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodDescriptorProto.verify = function verify(message) { + MethodDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -47111,7 +50474,7 @@ if (!$util.isString(message.outputType)) return "outputType: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MethodOptions.verify(message.options); + var error = $root.google.protobuf.MethodOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -47132,9 +50495,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto */ - MethodDescriptorProto.fromObject = function fromObject(object) { + MethodDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -47145,7 +50512,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); + message.options = $root.google.protobuf.MethodOptions.fromObject(object.options, long + 1); } if (object.clientStreaming != null) message.clientStreaming = Boolean(object.clientStreaming); @@ -47262,7 +50629,7 @@ this[".google.api.resourceDefinition"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47539,9 +50906,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileOptions.decode = function decode(reader, length, error) { + FileOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47625,23 +50996,23 @@ break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) message[".google.api.resourceDefinition"] = []; - message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); + message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47672,9 +51043,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileOptions.verify = function verify(message) { + FileOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) if (!$util.isString(message.javaPackage)) return "javaPackage: string expected"; @@ -47739,7 +51114,7 @@ if (!$util.isString(message.rubyPackage)) return "rubyPackage: string expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -47747,7 +51122,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -47756,7 +51131,7 @@ if (!Array.isArray(message[".google.api.resourceDefinition"])) return ".google.api.resourceDefinition: array expected"; for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i], long + 1); if (error) return ".google.api.resourceDefinition." + error; } @@ -47772,9 +51147,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileOptions} FileOptions */ - FileOptions.fromObject = function fromObject(object) { + FileOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileOptions(); if (object.javaPackage != null) message.javaPackage = String(object.javaPackage); @@ -47835,7 +51214,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FileOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -47844,7 +51223,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resourceDefinition"]) { @@ -47854,7 +51233,7 @@ for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { if (typeof object[".google.api.resourceDefinition"][i] !== "object") throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); - message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); + message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i], long + 1); } } return message; @@ -48025,7 +51404,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48161,9 +51540,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MessageOptions.decode = function decode(reader, length, error) { + MessageOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MessageOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -48191,21 +51574,21 @@ break; } case 12: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48236,9 +51619,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MessageOptions.verify = function verify(message) { + MessageOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) if (typeof message.messageSetWireFormat !== "boolean") return "messageSetWireFormat: boolean expected"; @@ -48255,7 +51642,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -48263,13 +51650,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"], long + 1); if (error) return ".google.api.resource." + error; } @@ -48284,9 +51671,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MessageOptions} MessageOptions */ - MessageOptions.fromObject = function fromObject(object) { + MessageOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MessageOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MessageOptions(); if (object.messageSetWireFormat != null) message.messageSetWireFormat = Boolean(object.messageSetWireFormat); @@ -48301,7 +51692,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MessageOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -48310,13 +51701,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resource"] != null) { if (typeof object[".google.api.resource"] !== "object") throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"], long + 1); } return message; }; @@ -48435,7 +51826,7 @@ this[".google.api.fieldBehavior"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48654,9 +52045,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldOptions.decode = function decode(reader, length, error) { + FieldOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -48713,21 +52108,21 @@ case 20: { if (!(message.editionDefaults && message.editionDefaults.length)) message.editionDefaults = []; - message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32())); + message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 21: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1052: { @@ -48742,11 +52137,11 @@ break; } case 1055: { - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48777,9 +52172,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldOptions.verify = function verify(message) { + FieldOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ctype != null && message.hasOwnProperty("ctype")) switch (message.ctype) { default: @@ -48849,18 +52248,18 @@ if (!Array.isArray(message.editionDefaults)) return "editionDefaults: array expected"; for (var i = 0; i < message.editionDefaults.length; ++i) { - var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i]); + var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i], long + 1); if (error) return "editionDefaults." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -48868,7 +52267,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -48893,7 +52292,7 @@ } } if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { - var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); + var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"], long + 1); if (error) return ".google.api.resourceReference." + error; } @@ -48908,9 +52307,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions} FieldOptions */ - FieldOptions.fromObject = function fromObject(object) { + FieldOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions(); switch (object.ctype) { default: @@ -49044,18 +52447,18 @@ for (var i = 0; i < object.editionDefaults.length; ++i) { if (typeof object.editionDefaults[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected"); - message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i]); + message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FieldOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.FieldOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -49064,7 +52467,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.fieldBehavior"]) { @@ -49119,7 +52522,7 @@ if (object[".google.api.resourceReference"] != null) { if (typeof object[".google.api.resourceReference"] !== "object") throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"], long + 1); } return message; }; @@ -49329,7 +52732,7 @@ function EditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49404,9 +52807,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EditionDefault.decode = function decode(reader, length, error) { + EditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.EditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49422,7 +52829,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49453,9 +52860,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EditionDefault.verify = function verify(message) { + EditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -49488,9 +52899,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault */ - EditionDefault.fromObject = function fromObject(object) { + EditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.EditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.EditionDefault(); switch (object.edition) { default: @@ -49629,7 +53044,7 @@ function FeatureSupport(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49724,9 +53139,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSupport.decode = function decode(reader, length, error) { + FeatureSupport.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.FeatureSupport(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49750,7 +53169,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49781,9 +53200,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSupport.verify = function verify(message) { + FeatureSupport.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.editionIntroduced != null && message.hasOwnProperty("editionIntroduced")) switch (message.editionIntroduced) { default: @@ -49852,9 +53275,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.FeatureSupport} FeatureSupport */ - FeatureSupport.fromObject = function fromObject(object) { + FeatureSupport.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.FeatureSupport) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.FeatureSupport(); switch (object.editionIntroduced) { default: @@ -50113,7 +53540,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50189,9 +53616,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofOptions.decode = function decode(reader, length, error) { + OneofOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50199,17 +53630,17 @@ break; switch (tag >>> 3) { case 1: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50240,11 +53671,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofOptions.verify = function verify(message) { + OneofOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -50252,7 +53687,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -50268,14 +53703,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofOptions} OneofOptions */ - OneofOptions.fromObject = function fromObject(object) { + OneofOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.OneofOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -50284,7 +53723,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -50371,7 +53810,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50477,9 +53916,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumOptions.decode = function decode(reader, length, error) { + EnumOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50499,17 +53942,17 @@ break; } case 7: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50540,9 +53983,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumOptions.verify = function verify(message) { + EnumOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) if (typeof message.allowAlias !== "boolean") return "allowAlias: boolean expected"; @@ -50553,7 +54000,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -50561,7 +54008,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -50577,9 +54024,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumOptions} EnumOptions */ - EnumOptions.fromObject = function fromObject(object) { + EnumOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumOptions(); if (object.allowAlias != null) message.allowAlias = Boolean(object.allowAlias); @@ -50590,7 +54041,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -50599,7 +54050,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -50696,7 +54147,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50802,9 +54253,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueOptions.decode = function decode(reader, length, error) { + EnumValueOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50816,7 +54271,7 @@ break; } case 2: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -50824,17 +54279,17 @@ break; } case 4: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50865,14 +54320,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueOptions.verify = function verify(message) { + EnumValueOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -50880,7 +54339,7 @@ if (typeof message.debugRedact !== "boolean") return "debugRedact: boolean expected"; if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -50888,7 +54347,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -50904,23 +54363,27 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueOptions} EnumValueOptions */ - EnumValueOptions.fromObject = function fromObject(object) { + EnumValueOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumValueOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.debugRedact != null) message.debugRedact = Boolean(object.debugRedact); if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.EnumValueOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -50929,7 +54392,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -51027,7 +54490,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51143,9 +54606,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceOptions.decode = function decode(reader, length, error) { + ServiceOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51153,7 +54620,7 @@ break; switch (tag >>> 3) { case 34: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 33: { @@ -51163,7 +54630,7 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1049: { @@ -51179,7 +54646,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51210,11 +54677,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceOptions.verify = function verify(message) { + ServiceOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -51225,7 +54696,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -51250,14 +54721,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceOptions} ServiceOptions */ - ServiceOptions.fromObject = function fromObject(object) { + ServiceOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ServiceOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -51268,7 +54743,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.defaultHost"] != null) @@ -51376,7 +54851,7 @@ this[".google.api.methodSignature"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51493,9 +54968,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodOptions.decode = function decode(reader, length, error) { + MethodOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51511,17 +54990,17 @@ break; } case 35: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 72295728: { - message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); + message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1051: { @@ -51531,7 +55010,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51562,9 +55041,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodOptions.verify = function verify(message) { + MethodOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; @@ -51578,7 +55061,7 @@ break; } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -51586,13 +55069,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { - var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); + var error = $root.google.api.HttpRule.verify(message[".google.api.http"], long + 1); if (error) return ".google.api.http." + error; } @@ -51614,9 +55097,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodOptions} MethodOptions */ - MethodOptions.fromObject = function fromObject(object) { + MethodOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -51643,7 +55130,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MethodOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -51652,13 +55139,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.http"] != null) { if (typeof object[".google.api.http"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); - message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); + message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"], long + 1); } if (object[".google.api.methodSignature"]) { if (!Array.isArray(object[".google.api.methodSignature"])) @@ -51786,7 +55273,7 @@ this.name = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51912,9 +55399,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UninterpretedOption.decode = function decode(reader, length, error) { + UninterpretedOption.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51924,7 +55415,7 @@ case 2: { if (!(message.name && message.name.length)) message.name = []; - message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -51952,7 +55443,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51983,14 +55474,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UninterpretedOption.verify = function verify(message) { + UninterpretedOption.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) { if (!Array.isArray(message.name)) return "name: array expected"; for (var i = 0; i < message.name.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); + var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i], long + 1); if (error) return "name." + error; } @@ -52024,9 +55519,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption} UninterpretedOption */ - UninterpretedOption.fromObject = function fromObject(object) { + UninterpretedOption.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption(); if (object.name) { if (!Array.isArray(object.name)) @@ -52035,7 +55534,7 @@ for (var i = 0; i < object.name.length; ++i) { if (typeof object.name[i] !== "object") throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); - message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); + message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i], long + 1); } } if (object.identifierValue != null) @@ -52180,7 +55679,7 @@ function NamePart(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52253,9 +55752,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NamePart.decode = function decode(reader, length, error) { + NamePart.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52271,7 +55774,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52306,9 +55809,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NamePart.verify = function verify(message) { + NamePart.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (!$util.isString(message.namePart)) return "namePart: string expected"; if (typeof message.isExtension !== "boolean") @@ -52324,9 +55831,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart */ - NamePart.fromObject = function fromObject(object) { + NamePart.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption.NamePart(); if (object.namePart != null) message.namePart = String(object.namePart); @@ -52418,7 +55929,7 @@ function FeatureSet(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52553,9 +56064,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSet.decode = function decode(reader, length, error) { + FeatureSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52595,7 +56110,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52626,9 +56141,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSet.verify = function verify(message) { + FeatureSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fieldPresence != null && message.hasOwnProperty("fieldPresence")) switch (message.fieldPresence) { default: @@ -52715,9 +56234,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet} FeatureSet */ - FeatureSet.fromObject = function fromObject(object) { + FeatureSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSet(); switch (object.fieldPresence) { default: @@ -53095,7 +56618,7 @@ function VisibilityFeature(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53150,9 +56673,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VisibilityFeature.decode = function decode(reader, length, error) { + VisibilityFeature.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet.VisibilityFeature(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53160,7 +56687,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53191,9 +56718,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VisibilityFeature.verify = function verify(message) { + VisibilityFeature.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -53205,9 +56736,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet.VisibilityFeature} VisibilityFeature */ - VisibilityFeature.fromObject = function fromObject(object) { + VisibilityFeature.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet.VisibilityFeature) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.FeatureSet.VisibilityFeature(); }; @@ -53299,7 +56834,7 @@ this.defaults = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53385,9 +56920,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetDefaults.decode = function decode(reader, length, error) { + FeatureSetDefaults.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53397,7 +56936,7 @@ case 1: { if (!(message.defaults && message.defaults.length)) message.defaults = []; - message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32())); + message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -53409,7 +56948,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53440,14 +56979,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetDefaults.verify = function verify(message) { + FeatureSetDefaults.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.defaults != null && message.hasOwnProperty("defaults")) { if (!Array.isArray(message.defaults)) return "defaults: array expected"; for (var i = 0; i < message.defaults.length; ++i) { - var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i]); + var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i], long + 1); if (error) return "defaults." + error; } @@ -53499,9 +57042,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults */ - FeatureSetDefaults.fromObject = function fromObject(object) { + FeatureSetDefaults.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults(); if (object.defaults) { if (!Array.isArray(object.defaults)) @@ -53510,7 +57057,7 @@ for (var i = 0; i < object.defaults.length; ++i) { if (typeof object.defaults[i] !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected"); - message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i]); + message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i], long + 1); } } switch (object.minimumEdition) { @@ -53707,7 +57254,7 @@ function FeatureSetEditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53792,9 +57339,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetEditionDefault.decode = function decode(reader, length, error) { + FeatureSetEditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53806,15 +57357,15 @@ break; } case 4: { - message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53845,9 +57396,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetEditionDefault.verify = function verify(message) { + FeatureSetEditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -53867,12 +57422,12 @@ break; } if (message.overridableFeatures != null && message.hasOwnProperty("overridableFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures, long + 1); if (error) return "overridableFeatures." + error; } if (message.fixedFeatures != null && message.hasOwnProperty("fixedFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures, long + 1); if (error) return "fixedFeatures." + error; } @@ -53887,9 +57442,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault */ - FeatureSetEditionDefault.fromObject = function fromObject(object) { + FeatureSetEditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); switch (object.edition) { default: @@ -53950,12 +57509,12 @@ if (object.overridableFeatures != null) { if (typeof object.overridableFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.overridableFeatures: object expected"); - message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures); + message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures, long + 1); } if (object.fixedFeatures != null) { if (typeof object.fixedFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fixedFeatures: object expected"); - message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures); + message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures, long + 1); } return message; }; @@ -54040,7 +57599,7 @@ this.location = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54106,9 +57665,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SourceCodeInfo.decode = function decode(reader, length, error) { + SourceCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54118,11 +57681,11 @@ case 1: { if (!(message.location && message.location.length)) message.location = []; - message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54153,14 +57716,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SourceCodeInfo.verify = function verify(message) { + SourceCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.location != null && message.hasOwnProperty("location")) { if (!Array.isArray(message.location)) return "location: array expected"; for (var i = 0; i < message.location.length; ++i) { - var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); + var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i], long + 1); if (error) return "location." + error; } @@ -54176,9 +57743,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo */ - SourceCodeInfo.fromObject = function fromObject(object) { + SourceCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo(); if (object.location) { if (!Array.isArray(object.location)) @@ -54187,7 +57758,7 @@ for (var i = 0; i < object.location.length; ++i) { if (typeof object.location[i] !== "object") throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); - message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); + message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i], long + 1); } } return message; @@ -54269,7 +57840,7 @@ this.leadingDetachedComments = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54383,9 +57954,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Location.decode = function decode(reader, length, error) { + Location.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo.Location(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54429,7 +58004,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54460,9 +58035,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Location.verify = function verify(message) { + Location.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -54501,9 +58080,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo.Location} Location */ - Location.fromObject = function fromObject(object) { + Location.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo.Location(); if (object.path) { if (!Array.isArray(object.path)) @@ -54630,7 +58213,7 @@ this.annotation = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54696,9 +58279,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GeneratedCodeInfo.decode = function decode(reader, length, error) { + GeneratedCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54708,11 +58295,11 @@ case 1: { if (!(message.annotation && message.annotation.length)) message.annotation = []; - message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); + message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54743,14 +58330,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GeneratedCodeInfo.verify = function verify(message) { + GeneratedCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.annotation != null && message.hasOwnProperty("annotation")) { if (!Array.isArray(message.annotation)) return "annotation: array expected"; for (var i = 0; i < message.annotation.length; ++i) { - var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); + var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i], long + 1); if (error) return "annotation." + error; } @@ -54766,9 +58357,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo */ - GeneratedCodeInfo.fromObject = function fromObject(object) { + GeneratedCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo(); if (object.annotation) { if (!Array.isArray(object.annotation)) @@ -54777,7 +58372,7 @@ for (var i = 0; i < object.annotation.length; ++i) { if (typeof object.annotation[i] !== "object") throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); - message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i], long + 1); } } return message; @@ -54857,7 +58452,7 @@ this.path = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54966,9 +58561,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Annotation.decode = function decode(reader, length, error) { + Annotation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55003,7 +58602,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55034,9 +58633,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Annotation.verify = function verify(message) { + Annotation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -55073,9 +58676,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation */ - Annotation.fromObject = function fromObject(object) { + Annotation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); if (object.path) { if (!Array.isArray(object.path)) @@ -55235,7 +58842,7 @@ function Duration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55310,9 +58917,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Duration.decode = function decode(reader, length, error) { + Duration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Duration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55328,7 +58939,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55359,9 +58970,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Duration.verify = function verify(message) { + Duration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -55379,9 +58994,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Duration} Duration */ - Duration.fromObject = function fromObject(object) { + Duration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Duration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Duration(); if (object.seconds != null) if ($util.Long) @@ -55476,7 +59095,7 @@ function Empty(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55531,9 +59150,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Empty.decode = function decode(reader, length, error) { + Empty.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Empty(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55541,7 +59164,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55572,9 +59195,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Empty.verify = function verify(message) { + Empty.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -55586,9 +59213,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Empty} Empty */ - Empty.fromObject = function fromObject(object) { + Empty.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Empty) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.Empty(); }; @@ -55655,7 +59286,7 @@ this.paths = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55721,9 +59352,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldMask.decode = function decode(reader, length, error) { + FieldMask.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldMask(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55737,7 +59372,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55768,9 +59403,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldMask.verify = function verify(message) { + FieldMask.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.paths != null && message.hasOwnProperty("paths")) { if (!Array.isArray(message.paths)) return "paths: array expected"; @@ -55789,9 +59428,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldMask} FieldMask */ - FieldMask.fromObject = function fromObject(object) { + FieldMask.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldMask) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldMask(); if (object.paths) { if (!Array.isArray(object.paths)) @@ -55917,7 +59560,7 @@ this.rules = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55993,9 +59636,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Http.decode = function decode(reader, length, error) { + Http.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http(); while (reader.pos < end) { var tag = reader.uint32(); @@ -56005,7 +59652,7 @@ case 1: { if (!(message.rules && message.rules.length)) message.rules = []; - message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -56013,7 +59660,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -56044,14 +59691,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Http.verify = function verify(message) { + Http.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rules != null && message.hasOwnProperty("rules")) { if (!Array.isArray(message.rules)) return "rules: array expected"; for (var i = 0; i < message.rules.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.rules[i]); + var error = $root.google.api.HttpRule.verify(message.rules[i], long + 1); if (error) return "rules." + error; } @@ -56070,9 +59721,13 @@ * @param {Object.} object Plain object * @returns {google.api.Http} Http */ - Http.fromObject = function fromObject(object) { + Http.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Http) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Http(); if (object.rules) { if (!Array.isArray(object.rules)) @@ -56081,7 +59736,7 @@ for (var i = 0; i < object.rules.length; ++i) { if (typeof object.rules[i] !== "object") throw TypeError(".google.api.Http.rules: object expected"); - message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); + message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i], long + 1); } } if (object.fullyDecodeReservedExpansion != null) @@ -56175,7 +59830,7 @@ this.additionalBindings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -56345,9 +60000,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpRule.decode = function decode(reader, length, error) { + HttpRule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -56379,7 +60038,7 @@ break; } case 8: { - message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -56393,11 +60052,11 @@ case 11: { if (!(message.additionalBindings && message.additionalBindings.length)) message.additionalBindings = []; - message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -56428,9 +60087,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - HttpRule.verify = function verify(message) { + HttpRule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) @@ -56473,7 +60136,7 @@ return "pattern: multiple values"; properties.pattern = 1; { - var error = $root.google.api.CustomHttpPattern.verify(message.custom); + var error = $root.google.api.CustomHttpPattern.verify(message.custom, long + 1); if (error) return "custom." + error; } @@ -56488,7 +60151,7 @@ if (!Array.isArray(message.additionalBindings)) return "additionalBindings: array expected"; for (var i = 0; i < message.additionalBindings.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); + var error = $root.google.api.HttpRule.verify(message.additionalBindings[i], long + 1); if (error) return "additionalBindings." + error; } @@ -56504,9 +60167,13 @@ * @param {Object.} object Plain object * @returns {google.api.HttpRule} HttpRule */ - HttpRule.fromObject = function fromObject(object) { + HttpRule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.HttpRule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.HttpRule(); if (object.selector != null) message.selector = String(object.selector); @@ -56523,7 +60190,7 @@ if (object.custom != null) { if (typeof object.custom !== "object") throw TypeError(".google.api.HttpRule.custom: object expected"); - message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); + message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom, long + 1); } if (object.body != null) message.body = String(object.body); @@ -56536,7 +60203,7 @@ for (var i = 0; i < object.additionalBindings.length; ++i) { if (typeof object.additionalBindings[i] !== "object") throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); - message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); + message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i], long + 1); } } return message; @@ -56656,7 +60323,7 @@ function CustomHttpPattern(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -56731,9 +60398,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomHttpPattern.decode = function decode(reader, length, error) { + CustomHttpPattern.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern(); while (reader.pos < end) { var tag = reader.uint32(); @@ -56749,7 +60420,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -56780,9 +60451,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomHttpPattern.verify = function verify(message) { + CustomHttpPattern.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.kind != null && message.hasOwnProperty("kind")) if (!$util.isString(message.kind)) return "kind: string expected"; @@ -56800,9 +60475,13 @@ * @param {Object.} object Plain object * @returns {google.api.CustomHttpPattern} CustomHttpPattern */ - CustomHttpPattern.fromObject = function fromObject(object) { + CustomHttpPattern.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CustomHttpPattern) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CustomHttpPattern(); if (object.kind != null) message.kind = String(object.kind); @@ -56887,7 +60566,7 @@ this.destinations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -56976,9 +60655,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CommonLanguageSettings.decode = function decode(reader, length, error) { + CommonLanguageSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CommonLanguageSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -57001,11 +60684,11 @@ break; } case 3: { - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32()); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -57036,9 +60719,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CommonLanguageSettings.verify = function verify(message) { + CommonLanguageSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.referenceDocsUri != null && message.hasOwnProperty("referenceDocsUri")) if (!$util.isString(message.referenceDocsUri)) return "referenceDocsUri: string expected"; @@ -57056,7 +60743,7 @@ } } if (message.selectiveGapicGeneration != null && message.hasOwnProperty("selectiveGapicGeneration")) { - var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration); + var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration, long + 1); if (error) return "selectiveGapicGeneration." + error; } @@ -57071,9 +60758,13 @@ * @param {Object.} object Plain object * @returns {google.api.CommonLanguageSettings} CommonLanguageSettings */ - CommonLanguageSettings.fromObject = function fromObject(object) { + CommonLanguageSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CommonLanguageSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CommonLanguageSettings(); if (object.referenceDocsUri != null) message.referenceDocsUri = String(object.referenceDocsUri); @@ -57105,7 +60796,7 @@ if (object.selectiveGapicGeneration != null) { if (typeof object.selectiveGapicGeneration !== "object") throw TypeError(".google.api.CommonLanguageSettings.selectiveGapicGeneration: object expected"); - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration, long + 1); } return message; }; @@ -57200,7 +60891,7 @@ function ClientLibrarySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -57365,9 +61056,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClientLibrarySettings.decode = function decode(reader, length, error) { + ClientLibrarySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ClientLibrarySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -57387,39 +61082,39 @@ break; } case 21: { - message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32()); + message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32()); + message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 23: { - message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32()); + message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 24: { - message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32()); + message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { - message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32()); + message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { - message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32()); + message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 27: { - message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32()); + message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 28: { - message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32()); + message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -57450,9 +61145,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClientLibrarySettings.verify = function verify(message) { + ClientLibrarySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.version != null && message.hasOwnProperty("version")) if (!$util.isString(message.version)) return "version: string expected"; @@ -57474,42 +61173,42 @@ if (typeof message.restNumericEnums !== "boolean") return "restNumericEnums: boolean expected"; if (message.javaSettings != null && message.hasOwnProperty("javaSettings")) { - var error = $root.google.api.JavaSettings.verify(message.javaSettings); + var error = $root.google.api.JavaSettings.verify(message.javaSettings, long + 1); if (error) return "javaSettings." + error; } if (message.cppSettings != null && message.hasOwnProperty("cppSettings")) { - var error = $root.google.api.CppSettings.verify(message.cppSettings); + var error = $root.google.api.CppSettings.verify(message.cppSettings, long + 1); if (error) return "cppSettings." + error; } if (message.phpSettings != null && message.hasOwnProperty("phpSettings")) { - var error = $root.google.api.PhpSettings.verify(message.phpSettings); + var error = $root.google.api.PhpSettings.verify(message.phpSettings, long + 1); if (error) return "phpSettings." + error; } if (message.pythonSettings != null && message.hasOwnProperty("pythonSettings")) { - var error = $root.google.api.PythonSettings.verify(message.pythonSettings); + var error = $root.google.api.PythonSettings.verify(message.pythonSettings, long + 1); if (error) return "pythonSettings." + error; } if (message.nodeSettings != null && message.hasOwnProperty("nodeSettings")) { - var error = $root.google.api.NodeSettings.verify(message.nodeSettings); + var error = $root.google.api.NodeSettings.verify(message.nodeSettings, long + 1); if (error) return "nodeSettings." + error; } if (message.dotnetSettings != null && message.hasOwnProperty("dotnetSettings")) { - var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings); + var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings, long + 1); if (error) return "dotnetSettings." + error; } if (message.rubySettings != null && message.hasOwnProperty("rubySettings")) { - var error = $root.google.api.RubySettings.verify(message.rubySettings); + var error = $root.google.api.RubySettings.verify(message.rubySettings, long + 1); if (error) return "rubySettings." + error; } if (message.goSettings != null && message.hasOwnProperty("goSettings")) { - var error = $root.google.api.GoSettings.verify(message.goSettings); + var error = $root.google.api.GoSettings.verify(message.goSettings, long + 1); if (error) return "goSettings." + error; } @@ -57524,9 +61223,13 @@ * @param {Object.} object Plain object * @returns {google.api.ClientLibrarySettings} ClientLibrarySettings */ - ClientLibrarySettings.fromObject = function fromObject(object) { + ClientLibrarySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ClientLibrarySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ClientLibrarySettings(); if (object.version != null) message.version = String(object.version); @@ -57575,42 +61278,42 @@ if (object.javaSettings != null) { if (typeof object.javaSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.javaSettings: object expected"); - message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings); + message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings, long + 1); } if (object.cppSettings != null) { if (typeof object.cppSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.cppSettings: object expected"); - message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings); + message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings, long + 1); } if (object.phpSettings != null) { if (typeof object.phpSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.phpSettings: object expected"); - message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings); + message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings, long + 1); } if (object.pythonSettings != null) { if (typeof object.pythonSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.pythonSettings: object expected"); - message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings); + message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings, long + 1); } if (object.nodeSettings != null) { if (typeof object.nodeSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.nodeSettings: object expected"); - message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings); + message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings, long + 1); } if (object.dotnetSettings != null) { if (typeof object.dotnetSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.dotnetSettings: object expected"); - message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings); + message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings, long + 1); } if (object.rubySettings != null) { if (typeof object.rubySettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.rubySettings: object expected"); - message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings); + message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings, long + 1); } if (object.goSettings != null) { if (typeof object.goSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.goSettings: object expected"); - message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings); + message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings, long + 1); } return message; }; @@ -57728,7 +61431,7 @@ this.librarySettings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -57896,9 +61599,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Publishing.decode = function decode(reader, length, error) { + Publishing.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Publishing(); while (reader.pos < end) { var tag = reader.uint32(); @@ -57908,7 +61615,7 @@ case 2: { if (!(message.methodSettings && message.methodSettings.length)) message.methodSettings = []; - message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32())); + message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 101: { @@ -57944,7 +61651,7 @@ case 109: { if (!(message.librarySettings && message.librarySettings.length)) message.librarySettings = []; - message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32())); + message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 110: { @@ -57956,7 +61663,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -57987,14 +61694,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Publishing.verify = function verify(message) { + Publishing.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methodSettings != null && message.hasOwnProperty("methodSettings")) { if (!Array.isArray(message.methodSettings)) return "methodSettings: array expected"; for (var i = 0; i < message.methodSettings.length; ++i) { - var error = $root.google.api.MethodSettings.verify(message.methodSettings[i]); + var error = $root.google.api.MethodSettings.verify(message.methodSettings[i], long + 1); if (error) return "methodSettings." + error; } @@ -58039,7 +61750,7 @@ if (!Array.isArray(message.librarySettings)) return "librarySettings: array expected"; for (var i = 0; i < message.librarySettings.length; ++i) { - var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i]); + var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i], long + 1); if (error) return "librarySettings." + error; } @@ -58061,9 +61772,13 @@ * @param {Object.} object Plain object * @returns {google.api.Publishing} Publishing */ - Publishing.fromObject = function fromObject(object) { + Publishing.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Publishing) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Publishing(); if (object.methodSettings) { if (!Array.isArray(object.methodSettings)) @@ -58072,7 +61787,7 @@ for (var i = 0; i < object.methodSettings.length; ++i) { if (typeof object.methodSettings[i] !== "object") throw TypeError(".google.api.Publishing.methodSettings: object expected"); - message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i]); + message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i], long + 1); } } if (object.newIssueUri != null) @@ -58139,7 +61854,7 @@ for (var i = 0; i < object.librarySettings.length; ++i) { if (typeof object.librarySettings[i] !== "object") throw TypeError(".google.api.Publishing.librarySettings: object expected"); - message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i]); + message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i], long + 1); } } if (object.protoReferenceDocumentationUri != null) @@ -58263,7 +61978,7 @@ this.serviceClassNames = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -58349,9 +62064,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - JavaSettings.decode = function decode(reader, length, error) { + JavaSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.JavaSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -58378,19 +62097,21 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.serviceClassNames, key); message.serviceClassNames[key] = value; break; } case 3: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -58421,9 +62142,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - JavaSettings.verify = function verify(message) { + JavaSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.libraryPackage != null && message.hasOwnProperty("libraryPackage")) if (!$util.isString(message.libraryPackage)) return "libraryPackage: string expected"; @@ -58436,7 +62161,7 @@ return "serviceClassNames: string{k:string} expected"; } if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -58451,9 +62176,13 @@ * @param {Object.} object Plain object * @returns {google.api.JavaSettings} JavaSettings */ - JavaSettings.fromObject = function fromObject(object) { + JavaSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.JavaSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.JavaSettings(); if (object.libraryPackage != null) message.libraryPackage = String(object.libraryPackage); @@ -58461,13 +62190,16 @@ if (typeof object.serviceClassNames !== "object") throw TypeError(".google.api.JavaSettings.serviceClassNames: object expected"); message.serviceClassNames = {}; - for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.serviceClassNames, keys[i]); message.serviceClassNames[keys[i]] = String(object.serviceClassNames[keys[i]]); + } } if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.JavaSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -58496,8 +62228,11 @@ var keys2; if (message.serviceClassNames && (keys2 = Object.keys(message.serviceClassNames)).length) { object.serviceClassNames = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.serviceClassNames, keys2[j]); object.serviceClassNames[keys2[j]] = message.serviceClassNames[keys2[j]]; + } } if (message.common != null && message.hasOwnProperty("common")) object.common = $root.google.api.CommonLanguageSettings.toObject(message.common, options); @@ -58553,7 +62288,7 @@ function CppSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -58618,9 +62353,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CppSettings.decode = function decode(reader, length, error) { + CppSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CppSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -58628,11 +62367,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -58663,11 +62402,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CppSettings.verify = function verify(message) { + CppSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -58682,14 +62425,18 @@ * @param {Object.} object Plain object * @returns {google.api.CppSettings} CppSettings */ - CppSettings.fromObject = function fromObject(object) { + CppSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CppSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CppSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.CppSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -58763,7 +62510,7 @@ function PhpSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -58828,9 +62575,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PhpSettings.decode = function decode(reader, length, error) { + PhpSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PhpSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -58838,11 +62589,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -58873,11 +62624,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PhpSettings.verify = function verify(message) { + PhpSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -58892,14 +62647,18 @@ * @param {Object.} object Plain object * @returns {google.api.PhpSettings} PhpSettings */ - PhpSettings.fromObject = function fromObject(object) { + PhpSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PhpSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PhpSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PhpSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -58974,7 +62733,7 @@ function PythonSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -59049,9 +62808,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PythonSettings.decode = function decode(reader, length, error) { + PythonSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -59059,15 +62822,15 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32()); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -59098,16 +62861,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PythonSettings.verify = function verify(message) { + PythonSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } if (message.experimentalFeatures != null && message.hasOwnProperty("experimentalFeatures")) { - var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures); + var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures, long + 1); if (error) return "experimentalFeatures." + error; } @@ -59122,19 +62889,23 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings} PythonSettings */ - PythonSettings.fromObject = function fromObject(object) { + PythonSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PythonSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.experimentalFeatures != null) { if (typeof object.experimentalFeatures !== "object") throw TypeError(".google.api.PythonSettings.experimentalFeatures: object expected"); - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures, long + 1); } return message; }; @@ -59211,7 +62982,7 @@ function ExperimentalFeatures(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -59296,9 +63067,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExperimentalFeatures.decode = function decode(reader, length, error) { + ExperimentalFeatures.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings.ExperimentalFeatures(); while (reader.pos < end) { var tag = reader.uint32(); @@ -59318,7 +63093,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -59349,9 +63124,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExperimentalFeatures.verify = function verify(message) { + ExperimentalFeatures.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.restAsyncIoEnabled != null && message.hasOwnProperty("restAsyncIoEnabled")) if (typeof message.restAsyncIoEnabled !== "boolean") return "restAsyncIoEnabled: boolean expected"; @@ -59372,9 +63151,13 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings.ExperimentalFeatures} ExperimentalFeatures */ - ExperimentalFeatures.fromObject = function fromObject(object) { + ExperimentalFeatures.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings.ExperimentalFeatures) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings.ExperimentalFeatures(); if (object.restAsyncIoEnabled != null) message.restAsyncIoEnabled = Boolean(object.restAsyncIoEnabled); @@ -59464,7 +63247,7 @@ function NodeSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -59529,9 +63312,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NodeSettings.decode = function decode(reader, length, error) { + NodeSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.NodeSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -59539,11 +63326,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -59574,11 +63361,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NodeSettings.verify = function verify(message) { + NodeSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -59593,14 +63384,18 @@ * @param {Object.} object Plain object * @returns {google.api.NodeSettings} NodeSettings */ - NodeSettings.fromObject = function fromObject(object) { + NodeSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.NodeSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.NodeSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.NodeSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -59684,7 +63479,7 @@ this.handwrittenSignatures = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -59804,9 +63599,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DotnetSettings.decode = function decode(reader, length, error) { + DotnetSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.DotnetSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -59814,7 +63613,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -59833,10 +63632,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } @@ -59856,10 +63657,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedResources, key); message.renamedResources[key] = value; break; } @@ -59882,7 +63685,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -59913,11 +63716,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DotnetSettings.verify = function verify(message) { + DotnetSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -59969,28 +63776,38 @@ * @param {Object.} object Plain object * @returns {google.api.DotnetSettings} DotnetSettings */ - DotnetSettings.fromObject = function fromObject(object) { + DotnetSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.DotnetSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.DotnetSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.DotnetSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.DotnetSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } if (object.renamedResources) { if (typeof object.renamedResources !== "object") throw TypeError(".google.api.DotnetSettings.renamedResources: object expected"); message.renamedResources = {}; - for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedResources, keys[i]); message.renamedResources[keys[i]] = String(object.renamedResources[keys[i]]); + } } if (object.ignoredResources) { if (!Array.isArray(object.ignoredResources)) @@ -60045,13 +63862,19 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } if (message.renamedResources && (keys2 = Object.keys(message.renamedResources)).length) { object.renamedResources = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedResources, keys2[j]); object.renamedResources[keys2[j]] = message.renamedResources[keys2[j]]; + } } if (message.ignoredResources && message.ignoredResources.length) { object.ignoredResources = []; @@ -60120,7 +63943,7 @@ function RubySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60185,9 +64008,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RubySettings.decode = function decode(reader, length, error) { + RubySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.RubySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -60195,11 +64022,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -60230,11 +64057,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RubySettings.verify = function verify(message) { + RubySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -60249,14 +64080,18 @@ * @param {Object.} object Plain object * @returns {google.api.RubySettings} RubySettings */ - RubySettings.fromObject = function fromObject(object) { + RubySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.RubySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.RubySettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.RubySettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -60332,7 +64167,7 @@ this.renamedServices = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60408,9 +64243,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GoSettings.decode = function decode(reader, length, error) { + GoSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.GoSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -60418,7 +64257,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -60437,15 +64276,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -60476,11 +64317,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GoSettings.verify = function verify(message) { + GoSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -60503,21 +64348,28 @@ * @param {Object.} object Plain object * @returns {google.api.GoSettings} GoSettings */ - GoSettings.fromObject = function fromObject(object) { + GoSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.GoSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.GoSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.GoSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.GoSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } return message; }; @@ -60544,8 +64396,11 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } return object; }; @@ -60602,7 +64457,7 @@ this.autoPopulatedFields = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60688,9 +64543,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodSettings.decode = function decode(reader, length, error) { + MethodSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -60702,7 +64561,7 @@ break; } case 2: { - message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32()); + message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -60712,7 +64571,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -60743,14 +64602,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodSettings.verify = function verify(message) { + MethodSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) return "selector: string expected"; if (message.longRunning != null && message.hasOwnProperty("longRunning")) { - var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning); + var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning, long + 1); if (error) return "longRunning." + error; } @@ -60772,16 +64635,20 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings} MethodSettings */ - MethodSettings.fromObject = function fromObject(object) { + MethodSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings(); if (object.selector != null) message.selector = String(object.selector); if (object.longRunning != null) { if (typeof object.longRunning !== "object") throw TypeError(".google.api.MethodSettings.longRunning: object expected"); - message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning); + message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning, long + 1); } if (object.autoPopulatedFields) { if (!Array.isArray(object.autoPopulatedFields)) @@ -60873,7 +64740,7 @@ function LongRunning(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60968,9 +64835,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LongRunning.decode = function decode(reader, length, error) { + LongRunning.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings.LongRunning(); while (reader.pos < end) { var tag = reader.uint32(); @@ -60978,7 +64849,7 @@ break; switch (tag >>> 3) { case 1: { - message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -60986,15 +64857,15 @@ break; } case 3: { - message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -61025,11 +64896,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LongRunning.verify = function verify(message) { + LongRunning.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.initialPollDelay != null && message.hasOwnProperty("initialPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.initialPollDelay); + var error = $root.google.protobuf.Duration.verify(message.initialPollDelay, long + 1); if (error) return "initialPollDelay." + error; } @@ -61037,12 +64912,12 @@ if (typeof message.pollDelayMultiplier !== "number") return "pollDelayMultiplier: number expected"; if (message.maxPollDelay != null && message.hasOwnProperty("maxPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.maxPollDelay); + var error = $root.google.protobuf.Duration.verify(message.maxPollDelay, long + 1); if (error) return "maxPollDelay." + error; } if (message.totalPollTimeout != null && message.hasOwnProperty("totalPollTimeout")) { - var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout); + var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout, long + 1); if (error) return "totalPollTimeout." + error; } @@ -61057,26 +64932,30 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings.LongRunning} LongRunning */ - LongRunning.fromObject = function fromObject(object) { + LongRunning.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings.LongRunning) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings.LongRunning(); if (object.initialPollDelay != null) { if (typeof object.initialPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.initialPollDelay: object expected"); - message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay); + message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay, long + 1); } if (object.pollDelayMultiplier != null) message.pollDelayMultiplier = Number(object.pollDelayMultiplier); if (object.maxPollDelay != null) { if (typeof object.maxPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.maxPollDelay: object expected"); - message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay); + message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay, long + 1); } if (object.totalPollTimeout != null) { if (typeof object.totalPollTimeout !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.totalPollTimeout: object expected"); - message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout); + message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout, long + 1); } return message; }; @@ -61207,7 +65086,7 @@ this.methods = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -61283,9 +65162,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectiveGapicGeneration.decode = function decode(reader, length, error) { + SelectiveGapicGeneration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.SelectiveGapicGeneration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -61303,7 +65186,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -61334,9 +65217,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectiveGapicGeneration.verify = function verify(message) { + SelectiveGapicGeneration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methods != null && message.hasOwnProperty("methods")) { if (!Array.isArray(message.methods)) return "methods: array expected"; @@ -61358,9 +65245,13 @@ * @param {Object.} object Plain object * @returns {google.api.SelectiveGapicGeneration} SelectiveGapicGeneration */ - SelectiveGapicGeneration.fromObject = function fromObject(object) { + SelectiveGapicGeneration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.SelectiveGapicGeneration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.SelectiveGapicGeneration(); if (object.methods) { if (!Array.isArray(object.methods)) @@ -61484,7 +65375,7 @@ this.style = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -61614,9 +65505,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decode = function decode(reader, length, error) { + ResourceDescriptor.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceDescriptor(); while (reader.pos < end) { var tag = reader.uint32(); @@ -61661,7 +65556,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -61692,9 +65587,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceDescriptor.verify = function verify(message) { + ResourceDescriptor.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -61746,9 +65645,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceDescriptor} ResourceDescriptor */ - ResourceDescriptor.fromObject = function fromObject(object) { + ResourceDescriptor.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceDescriptor) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceDescriptor(); if (object.type != null) message.type = String(object.type); @@ -61936,7 +65839,7 @@ function ResourceReference(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -62011,9 +65914,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceReference.decode = function decode(reader, length, error) { + ResourceReference.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceReference(); while (reader.pos < end) { var tag = reader.uint32(); @@ -62029,7 +65936,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -62060,9 +65967,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceReference.verify = function verify(message) { + ResourceReference.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -62080,9 +65991,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceReference} ResourceReference */ - ResourceReference.fromObject = function fromObject(object) { + ResourceReference.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceReference) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceReference(); if (object.type != null) message.type = String(object.type); @@ -62179,7 +66094,7 @@ this.details = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -62265,9 +66180,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Status.decode = function decode(reader, length, error) { + Status.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.rpc.Status(); while (reader.pos < end) { var tag = reader.uint32(); @@ -62285,11 +66204,11 @@ case 3: { if (!(message.details && message.details.length)) message.details = []; - message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32())); + message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -62320,9 +66239,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Status.verify = function verify(message) { + Status.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.code != null && message.hasOwnProperty("code")) if (!$util.isInteger(message.code)) return "code: integer expected"; @@ -62333,7 +66256,7 @@ if (!Array.isArray(message.details)) return "details: array expected"; for (var i = 0; i < message.details.length; ++i) { - var error = $root.google.protobuf.Any.verify(message.details[i]); + var error = $root.google.protobuf.Any.verify(message.details[i], long + 1); if (error) return "details." + error; } @@ -62349,9 +66272,13 @@ * @param {Object.} object Plain object * @returns {google.rpc.Status} Status */ - Status.fromObject = function fromObject(object) { + Status.fromObject = function fromObject(object, long) { if (object instanceof $root.google.rpc.Status) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.rpc.Status(); if (object.code != null) message.code = object.code | 0; @@ -62364,7 +66291,7 @@ for (var i = 0; i < object.details.length; ++i) { if (typeof object.details[i] !== "object") throw TypeError(".google.rpc.Status.details: object expected"); - message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i]); + message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i], long + 1); } } return message; diff --git a/packages/grafeas/protos/protos.json b/packages/grafeas/protos/protos.json index fbcfdaa1c6c8..011f99d84b5e 100644 --- a/packages/grafeas/protos/protos.json +++ b/packages/grafeas/protos/protos.json @@ -137,6 +137,10 @@ "layerDetails": { "type": "LayerDetails", "id": 2 + }, + "lineNumber": { + "type": "int32", + "id": 3 } } }, @@ -153,6 +157,10 @@ "layerCount": { "type": "int32", "id": 3 + }, + "registry": { + "type": "string", + "id": 4 } } }, @@ -1502,6 +1510,15 @@ "vulnerabilityAttestation": { "type": "VulnerabilityAttestation", "id": 10 + }, + "files": { + "rule": "repeated", + "type": "File", + "id": 11 + }, + "lastVulnerabilityUpdateTime": { + "type": "google.protobuf.Timestamp", + "id": 12 } }, "nested": { @@ -1580,6 +1597,19 @@ } } } + }, + "File": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "digest": { + "keyType": "string", + "type": "string", + "id": 2 + } + } } } }, @@ -2215,6 +2245,10 @@ "pageToken": { "type": "string", "id": 4 + }, + "returnPartialSuccess": { + "type": "bool", + "id": 5 } } }, @@ -2228,6 +2262,14 @@ "nextPageToken": { "type": "string", "id": 2 + }, + "unreachable": { + "rule": "repeated", + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "UNORDERED_LIST" + } } } }, @@ -2330,6 +2372,10 @@ "pageToken": { "type": "string", "id": 4 + }, + "returnPartialSuccess": { + "type": "bool", + "id": 5 } } }, @@ -2343,6 +2389,14 @@ "nextPageToken": { "type": "string", "id": 2 + }, + "unreachable": { + "rule": "repeated", + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "UNORDERED_LIST" + } } } }, @@ -2858,6 +2912,14 @@ "options": { "(google.api.field_behavior)": "OPTIONAL" } + }, + "data": { + "type": "google.protobuf.Any", + "id": 4 + }, + "digest": { + "type": "Digest", + "id": 5 } } }, @@ -2915,7 +2977,27 @@ "values": { "SECRET_KIND_UNSPECIFIED": 0, "SECRET_KIND_UNKNOWN": 1, - "SECRET_KIND_GCP_SERVICE_ACCOUNT_KEY": 2 + "SECRET_KIND_GCP_SERVICE_ACCOUNT_KEY": 2, + "SECRET_KIND_GCP_API_KEY": 3, + "SECRET_KIND_GCP_OAUTH2_CLIENT_CREDENTIALS": 4, + "SECRET_KIND_GCP_OAUTH2_ACCESS_TOKEN": 5, + "SECRET_KIND_ANTHROPIC_ADMIN_API_KEY": 6, + "SECRET_KIND_ANTHROPIC_API_KEY": 7, + "SECRET_KIND_AZURE_ACCESS_TOKEN": 8, + "SECRET_KIND_AZURE_IDENTITY_TOKEN": 9, + "SECRET_KIND_DOCKER_HUB_PERSONAL_ACCESS_TOKEN": 10, + "SECRET_KIND_GITHUB_APP_REFRESH_TOKEN": 11, + "SECRET_KIND_GITHUB_APP_SERVER_TO_SERVER_TOKEN": 12, + "SECRET_KIND_GITHUB_APP_USER_TO_SERVER_TOKEN": 13, + "SECRET_KIND_GITHUB_CLASSIC_PERSONAL_ACCESS_TOKEN": 14, + "SECRET_KIND_GITHUB_FINE_GRAINED_PERSONAL_ACCESS_TOKEN": 15, + "SECRET_KIND_GITHUB_OAUTH_TOKEN": 16, + "SECRET_KIND_HUGGINGFACE_API_KEY": 17, + "SECRET_KIND_OPENAI_API_KEY": 18, + "SECRET_KIND_PERPLEXITY_API_KEY": 19, + "SECRET_KIND_STRIPE_SECRET_KEY": 20, + "SECRET_KIND_STRIPE_RESTRICTED_KEY": 21, + "SECRET_KIND_STRIPE_WEBHOOK_SECRET": 22 } }, "UpgradeNote": { @@ -3257,6 +3339,10 @@ "cvssV2": { "type": "CVSS", "id": 8 + }, + "advisoryPublishTime": { + "type": "google.protobuf.Timestamp", + "id": 9 } }, "nested": { @@ -3416,6 +3502,10 @@ "extraDetails": { "type": "string", "id": 14 + }, + "risk": { + "type": "Risk", + "id": 15 } }, "nested": { @@ -3510,6 +3600,38 @@ } } } + }, + "Risk": { + "fields": { + "cisaKev": { + "type": "CISAKnownExploitedVulnerabilities", + "id": 1 + }, + "epss": { + "type": "ExploitPredictionScoringSystem", + "id": 2 + } + } + }, + "CISAKnownExploitedVulnerabilities": { + "fields": { + "knownRansomwareCampaignUse": { + "type": "string", + "id": 1 + } + } + }, + "ExploitPredictionScoringSystem": { + "fields": { + "percentile": { + "type": "double", + "id": 1 + }, + "score": { + "type": "double", + "id": 2 + } + } } } } @@ -4050,7 +4172,14 @@ "type": "ServiceOptions", "id": 3 } - } + }, + "reserved": [ + [ + 4, + 4 + ], + "stream" + ] }, "MethodDescriptorProto": { "edition": "proto2", diff --git a/packages/grafeas/samples/generated/v1/grafeas.list_notes.js b/packages/grafeas/samples/generated/v1/grafeas.list_notes.js index 06a24eca5c99..31b29ba0db4c 100644 --- a/packages/grafeas/samples/generated/v1/grafeas.list_notes.js +++ b/packages/grafeas/samples/generated/v1/grafeas.list_notes.js @@ -46,6 +46,13 @@ function main(parent) { * Token to provide to skip to a particular spot in the list. */ // const pageToken = 'abc123' + /** + * If set, the request will return all reachable Notes + * and report all unreachable regions in the `unreachable` field in + * the response. + * Only applicable for requests in the global region. + */ + // const returnPartialSuccess = true // Imports the Grafeas library const {GrafeasClient} = require('@google-cloud/grafeas').v1; diff --git a/packages/grafeas/samples/generated/v1/grafeas.list_occurrences.js b/packages/grafeas/samples/generated/v1/grafeas.list_occurrences.js index c5a8bd7b886c..d9bc1673242f 100644 --- a/packages/grafeas/samples/generated/v1/grafeas.list_occurrences.js +++ b/packages/grafeas/samples/generated/v1/grafeas.list_occurrences.js @@ -46,6 +46,13 @@ function main(parent) { * Token to provide to skip to a particular spot in the list. */ // const pageToken = 'abc123' + /** + * If set, the request will return all reachable Occurrences + * and report all unreachable regions in the `unreachable` field in + * the response. + * Only applicable for requests in the global region. + */ + // const returnPartialSuccess = true // Imports the Grafeas library const {GrafeasClient} = require('@google-cloud/grafeas').v1; diff --git a/packages/grafeas/src/v1/grafeas_client.ts b/packages/grafeas/src/v1/grafeas_client.ts index 5fd819a7f330..a03ac52e561e 100644 --- a/packages/grafeas/src/v1/grafeas_client.ts +++ b/packages/grafeas/src/v1/grafeas_client.ts @@ -18,11 +18,18 @@ /* global window */ import type * as gax from 'google-gax'; -import type {Callback, CallOptions, Descriptors, ClientOptions, PaginationCallback, GaxCall} from 'google-gax'; -import {Transform} from 'stream'; +import type { + Callback, + CallOptions, + Descriptors, + ClientOptions, + PaginationCallback, + GaxCall, +} from 'google-gax'; +import { Transform } from 'stream'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); -import {loggingUtils as logging, decodeAnyProtosInArray} from 'google-gax'; +import { loggingUtils as logging, decodeAnyProtosInArray } from 'google-gax'; /** * Client JSON configuration object, loaded from @@ -57,7 +64,7 @@ export class GrafeasClient { private _gaxModule: typeof gax | typeof gax.fallback; private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; private _protos: {}; - private _defaults: {[method: string]: gax.CallSettings}; + private _defaults: { [method: string]: gax.CallSettings }; private _universeDomain: string; private _servicePath: string; private _log = logging.log('grafeas'); @@ -70,9 +77,9 @@ export class GrafeasClient { batching: {}, }; warn: (code: string, message: string, warnType?: string) => void; - innerApiCalls: {[name: string]: Function}; - pathTemplates: {[name: string]: gax.PathTemplate}; - grafeasStub?: Promise<{[name: string]: Function}>; + innerApiCalls: { [name: string]: Function }; + pathTemplates: { [name: string]: gax.PathTemplate }; + grafeasStub?: Promise<{ [name: string]: Function }>; /** * Construct an instance of GrafeasClient. @@ -113,21 +120,42 @@ export class GrafeasClient { * const client = new GrafeasClient({fallback: true}, gax); * ``` */ - constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback) { + constructor( + opts?: ClientOptions, + gaxInstance?: typeof gax | typeof gax.fallback, + ) { // Ensure that options include all the required fields. const staticMembers = this.constructor as typeof GrafeasClient; - if (opts?.universe_domain && opts?.universeDomain && opts?.universe_domain !== opts?.universeDomain) { - throw new Error('Please set either universe_domain or universeDomain, but not both.'); + if ( + opts?.universe_domain && + opts?.universeDomain && + opts?.universe_domain !== opts?.universeDomain + ) { + throw new Error( + 'Please set either universe_domain or universeDomain, but not both.', + ); } - const universeDomainEnvVar = (typeof process === 'object' && typeof process.env === 'object') ? process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] : undefined; - this._universeDomain = opts?.universeDomain ?? opts?.universe_domain ?? universeDomainEnvVar ?? 'googleapis.com'; + const universeDomainEnvVar = + typeof process === 'object' && typeof process.env === 'object' + ? process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] + : undefined; + this._universeDomain = + opts?.universeDomain ?? + opts?.universe_domain ?? + universeDomainEnvVar ?? + 'googleapis.com'; this._servicePath = 'containeranalysis.' + this._universeDomain; - const servicePath = opts?.servicePath || opts?.apiEndpoint || this._servicePath; - this._providedCustomServicePath = !!(opts?.servicePath || opts?.apiEndpoint); + const servicePath = + opts?.servicePath || opts?.apiEndpoint || this._servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); const port = opts?.port || staticMembers.port; const clientConfig = opts?.clientConfig ?? {}; - const fallback = opts?.fallback ?? (typeof window !== 'undefined' && typeof window?.fetch === 'function'); - opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({ servicePath, port, clientConfig, fallback }, opts); // Request numeric enum values if REST transport is used. opts.numericEnums = true; @@ -152,7 +180,7 @@ export class GrafeasClient { this._opts = opts; // Save the auth object to the client, for use by other methods. - this.auth = (this._gaxGrpc.auth as gax.GoogleAuth); + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; // Set useJWTAccessWithScope on the auth object. this.auth.useJWTAccessWithScope = true; @@ -166,10 +194,7 @@ export class GrafeasClient { } // Determine the client header string. - const clientHeader = [ - `gax/${this._gaxModule.version}`, - `gapic/${version}`, - ]; + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; if (typeof process === 'object' && 'versions' in process) { clientHeader.push(`gl-node/${process.versions.node}`); } else { @@ -191,13 +216,13 @@ export class GrafeasClient { // Create useful helper objects for these. this.pathTemplates = { notePathTemplate: new this._gaxModule.PathTemplate( - 'projects/{project}/notes/{note}' + 'projects/{project}/notes/{note}', ), occurrencePathTemplate: new this._gaxModule.PathTemplate( - 'projects/{project}/occurrences/{occurrence}' + 'projects/{project}/occurrences/{occurrence}', ), projectPathTemplate: new this._gaxModule.PathTemplate( - 'projects/{project}' + 'projects/{project}', ), }; @@ -205,18 +230,30 @@ export class GrafeasClient { // (e.g. 50 results at a time, with tokens to get subsequent // pages). Denote the keys used for pagination and results. this.descriptors.page = { - listOccurrences: - new this._gaxModule.PageDescriptor('pageToken', 'nextPageToken', 'occurrences'), - listNotes: - new this._gaxModule.PageDescriptor('pageToken', 'nextPageToken', 'notes'), - listNoteOccurrences: - new this._gaxModule.PageDescriptor('pageToken', 'nextPageToken', 'occurrences') + listOccurrences: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'occurrences', + ), + listNotes: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'notes', + ), + listNoteOccurrences: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'occurrences', + ), }; // Put together the default options sent with requests. this._defaults = this._gaxGrpc.constructSettings( - 'grafeas.v1.Grafeas', gapicConfig as gax.ClientConfig, - opts.clientConfig || {}, {'x-goog-api-client': clientHeader.join(' ')}); + 'grafeas.v1.Grafeas', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + { 'x-goog-api-client': clientHeader.join(' ') }, + ); // Set up a dictionary of "inner API calls"; the core implementation // of calling the API is handled in `google-gax`, with this code @@ -247,37 +284,53 @@ export class GrafeasClient { // Put together the "service stub" for // grafeas.v1.Grafeas. this.grafeasStub = this._gaxGrpc.createStub( - this._opts.fallback ? - (this._protos as protobuf.Root).lookupService('grafeas.v1.Grafeas') : - // eslint-disable-next-line @typescript-eslint/no-explicit-any + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService('grafeas.v1.Grafeas') + : // eslint-disable-next-line @typescript-eslint/no-explicit-any (this._protos as any).grafeas.v1.Grafeas, - this._opts, this._providedCustomServicePath) as Promise<{[method: string]: Function}>; + this._opts, + this._providedCustomServicePath, + ) as Promise<{ [method: string]: Function }>; // Iterate over each of the methods that the service provides // and create an API call method for each. - const grafeasStubMethods = - ['getOccurrence', 'listOccurrences', 'deleteOccurrence', 'createOccurrence', 'batchCreateOccurrences', 'updateOccurrence', 'getOccurrenceNote', 'getNote', 'listNotes', 'deleteNote', 'createNote', 'batchCreateNotes', 'updateNote', 'listNoteOccurrences']; + const grafeasStubMethods = [ + 'getOccurrence', + 'listOccurrences', + 'deleteOccurrence', + 'createOccurrence', + 'batchCreateOccurrences', + 'updateOccurrence', + 'getOccurrenceNote', + 'getNote', + 'listNotes', + 'deleteNote', + 'createNote', + 'batchCreateNotes', + 'updateNote', + 'listNoteOccurrences', + ]; for (const methodName of grafeasStubMethods) { const callPromise = this.grafeasStub.then( - stub => (...args: Array<{}>) => { - if (this._terminated) { - return Promise.reject('The client has already been closed.'); - } - const func = stub[methodName]; - return func.apply(stub, args); - }, - (err: Error|null|undefined) => () => { + (stub) => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { throw err; - }); + }, + ); - const descriptor = - this.descriptors.page[methodName] || - undefined; + const descriptor = this.descriptors.page[methodName] || undefined; const apiCall = this._gaxModule.createApiCall( callPromise, this._defaults[methodName], descriptor, - this._opts.fallback + this._opts.fallback, ); this.innerApiCalls[methodName] = apiCall; @@ -292,8 +345,14 @@ export class GrafeasClient { * @returns {string} The DNS address for this service. */ static get servicePath() { - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - process.emitWarning('Static servicePath is deprecated, please use the instance method instead.', 'DeprecationWarning'); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + process.emitWarning( + 'Static servicePath is deprecated, please use the instance method instead.', + 'DeprecationWarning', + ); } return 'containeranalysis.googleapis.com'; } @@ -304,8 +363,14 @@ export class GrafeasClient { * @returns {string} The DNS address for this service. */ static get apiEndpoint() { - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - process.emitWarning('Static apiEndpoint is deprecated, please use the instance method instead.', 'DeprecationWarning'); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + process.emitWarning( + 'Static apiEndpoint is deprecated, please use the instance method instead.', + 'DeprecationWarning', + ); } return 'containeranalysis.googleapis.com'; } @@ -345,8 +410,9 @@ export class GrafeasClient { * Return the project ID used by this class. * @returns {Promise} A promise that resolves to string containing the project ID. */ - getProjectId(callback?: Callback): - Promise|void { + getProjectId( + callback?: Callback, + ): Promise | void { if (callback) { this.auth.getProjectId(callback); return; @@ -357,1158 +423,1509 @@ export class GrafeasClient { // ------------------- // -- Service calls -- // ------------------- -/** - * Gets the specified occurrence. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The name of the occurrence in the form of - * `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.grafeas.v1.Occurrence|Occurrence}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.get_occurrence.js - * region_tag:containeranalysis_v1_generated_Grafeas_GetOccurrence_async - */ + /** + * Gets the specified occurrence. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The name of the occurrence in the form of + * `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.grafeas.v1.Occurrence|Occurrence}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.get_occurrence.js + * region_tag:containeranalysis_v1_generated_Grafeas_GetOccurrence_async + */ getOccurrence( - request?: protos.grafeas.v1.IGetOccurrenceRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IGetOccurrenceRequest|undefined, {}|undefined - ]>; + request?: protos.grafeas.v1.IGetOccurrenceRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IGetOccurrenceRequest | undefined, + {} | undefined, + ] + >; getOccurrence( - request: protos.grafeas.v1.IGetOccurrenceRequest, - options: CallOptions, - callback: Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IGetOccurrenceRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IGetOccurrenceRequest, + options: CallOptions, + callback: Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IGetOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): void; getOccurrence( - request: protos.grafeas.v1.IGetOccurrenceRequest, - callback: Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IGetOccurrenceRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IGetOccurrenceRequest, + callback: Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IGetOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): void; getOccurrence( - request?: protos.grafeas.v1.IGetOccurrenceRequest, - optionsOrCallback?: CallOptions|Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IGetOccurrenceRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.grafeas.v1.IGetOccurrenceRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IGetOccurrenceRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IGetOccurrenceRequest|undefined, {}|undefined - ]>|void { + protos.grafeas.v1.IGetOccurrenceRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IGetOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IGetOccurrenceRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('getOccurrence request %j', request); - const wrappedCallback: Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IGetOccurrenceRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IGetOccurrenceRequest | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('getOccurrence response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.getOccurrence(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IGetOccurrenceRequest|undefined, - {}|undefined - ]) => { - this._log.info('getOccurrence response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .getOccurrence(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IGetOccurrenceRequest | undefined, + {} | undefined, + ]) => { + this._log.info('getOccurrence response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Deletes the specified occurrence. For example, use this method to delete an - * occurrence when the occurrence is no longer applicable for the given - * resource. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The name of the occurrence in the form of - * `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.protobuf.Empty|Empty}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.delete_occurrence.js - * region_tag:containeranalysis_v1_generated_Grafeas_DeleteOccurrence_async - */ + /** + * Deletes the specified occurrence. For example, use this method to delete an + * occurrence when the occurrence is no longer applicable for the given + * resource. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The name of the occurrence in the form of + * `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.protobuf.Empty|Empty}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.delete_occurrence.js + * region_tag:containeranalysis_v1_generated_Grafeas_DeleteOccurrence_async + */ deleteOccurrence( - request?: protos.grafeas.v1.IDeleteOccurrenceRequest, - options?: CallOptions): - Promise<[ - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteOccurrenceRequest|undefined, {}|undefined - ]>; + request?: protos.grafeas.v1.IDeleteOccurrenceRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteOccurrenceRequest | undefined, + {} | undefined, + ] + >; deleteOccurrence( - request: protos.grafeas.v1.IDeleteOccurrenceRequest, - options: CallOptions, - callback: Callback< - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteOccurrenceRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IDeleteOccurrenceRequest, + options: CallOptions, + callback: Callback< + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): void; deleteOccurrence( - request: protos.grafeas.v1.IDeleteOccurrenceRequest, - callback: Callback< - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteOccurrenceRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IDeleteOccurrenceRequest, + callback: Callback< + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): void; deleteOccurrence( - request?: protos.grafeas.v1.IDeleteOccurrenceRequest, - optionsOrCallback?: CallOptions|Callback< - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteOccurrenceRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.grafeas.v1.IDeleteOccurrenceRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteOccurrenceRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteOccurrenceRequest|undefined, {}|undefined - ]>|void { + protos.grafeas.v1.IDeleteOccurrenceRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteOccurrenceRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('deleteOccurrence request %j', request); - const wrappedCallback: Callback< - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteOccurrenceRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteOccurrenceRequest | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('deleteOccurrence response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.deleteOccurrence(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteOccurrenceRequest|undefined, - {}|undefined - ]) => { - this._log.info('deleteOccurrence response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .deleteOccurrence(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteOccurrenceRequest | undefined, + {} | undefined, + ]) => { + this._log.info('deleteOccurrence response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Creates a new occurrence. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * The name of the project in the form of `projects/[PROJECT_ID]`, under which - * the occurrence is to be created. - * @param {grafeas.v1.Occurrence} request.occurrence - * The occurrence to create. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.grafeas.v1.Occurrence|Occurrence}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.create_occurrence.js - * region_tag:containeranalysis_v1_generated_Grafeas_CreateOccurrence_async - */ + /** + * Creates a new occurrence. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The name of the project in the form of `projects/[PROJECT_ID]`, under which + * the occurrence is to be created. + * @param {grafeas.v1.Occurrence} request.occurrence + * The occurrence to create. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.grafeas.v1.Occurrence|Occurrence}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.create_occurrence.js + * region_tag:containeranalysis_v1_generated_Grafeas_CreateOccurrence_async + */ createOccurrence( - request?: protos.grafeas.v1.ICreateOccurrenceRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.ICreateOccurrenceRequest|undefined, {}|undefined - ]>; + request?: protos.grafeas.v1.ICreateOccurrenceRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.ICreateOccurrenceRequest | undefined, + {} | undefined, + ] + >; createOccurrence( - request: protos.grafeas.v1.ICreateOccurrenceRequest, - options: CallOptions, - callback: Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.ICreateOccurrenceRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.ICreateOccurrenceRequest, + options: CallOptions, + callback: Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.ICreateOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): void; createOccurrence( - request: protos.grafeas.v1.ICreateOccurrenceRequest, - callback: Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.ICreateOccurrenceRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.ICreateOccurrenceRequest, + callback: Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.ICreateOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): void; createOccurrence( - request?: protos.grafeas.v1.ICreateOccurrenceRequest, - optionsOrCallback?: CallOptions|Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.ICreateOccurrenceRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.grafeas.v1.ICreateOccurrenceRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.ICreateOccurrenceRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.ICreateOccurrenceRequest|undefined, {}|undefined - ]>|void { + protos.grafeas.v1.ICreateOccurrenceRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.ICreateOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.ICreateOccurrenceRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('createOccurrence request %j', request); - const wrappedCallback: Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.ICreateOccurrenceRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.ICreateOccurrenceRequest | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('createOccurrence response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.createOccurrence(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.ICreateOccurrenceRequest|undefined, - {}|undefined - ]) => { - this._log.info('createOccurrence response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .createOccurrence(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.ICreateOccurrenceRequest | undefined, + {} | undefined, + ]) => { + this._log.info('createOccurrence response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Creates new occurrences in batch. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * The name of the project in the form of `projects/[PROJECT_ID]`, under which - * the occurrences are to be created. - * @param {number[]} request.occurrences - * The occurrences to create. Max allowed length is 1000. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.grafeas.v1.BatchCreateOccurrencesResponse|BatchCreateOccurrencesResponse}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.batch_create_occurrences.js - * region_tag:containeranalysis_v1_generated_Grafeas_BatchCreateOccurrences_async - */ + /** + * Creates new occurrences in batch. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The name of the project in the form of `projects/[PROJECT_ID]`, under which + * the occurrences are to be created. + * @param {number[]} request.occurrences + * The occurrences to create. Max allowed length is 1000. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.grafeas.v1.BatchCreateOccurrencesResponse|BatchCreateOccurrencesResponse}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.batch_create_occurrences.js + * region_tag:containeranalysis_v1_generated_Grafeas_BatchCreateOccurrences_async + */ batchCreateOccurrences( - request?: protos.grafeas.v1.IBatchCreateOccurrencesRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.IBatchCreateOccurrencesResponse, - protos.grafeas.v1.IBatchCreateOccurrencesRequest|undefined, {}|undefined - ]>; + request?: protos.grafeas.v1.IBatchCreateOccurrencesRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.IBatchCreateOccurrencesResponse, + protos.grafeas.v1.IBatchCreateOccurrencesRequest | undefined, + {} | undefined, + ] + >; batchCreateOccurrences( - request: protos.grafeas.v1.IBatchCreateOccurrencesRequest, - options: CallOptions, - callback: Callback< - protos.grafeas.v1.IBatchCreateOccurrencesResponse, - protos.grafeas.v1.IBatchCreateOccurrencesRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IBatchCreateOccurrencesRequest, + options: CallOptions, + callback: Callback< + protos.grafeas.v1.IBatchCreateOccurrencesResponse, + protos.grafeas.v1.IBatchCreateOccurrencesRequest | null | undefined, + {} | null | undefined + >, + ): void; batchCreateOccurrences( - request: protos.grafeas.v1.IBatchCreateOccurrencesRequest, - callback: Callback< - protos.grafeas.v1.IBatchCreateOccurrencesResponse, - protos.grafeas.v1.IBatchCreateOccurrencesRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IBatchCreateOccurrencesRequest, + callback: Callback< + protos.grafeas.v1.IBatchCreateOccurrencesResponse, + protos.grafeas.v1.IBatchCreateOccurrencesRequest | null | undefined, + {} | null | undefined + >, + ): void; batchCreateOccurrences( - request?: protos.grafeas.v1.IBatchCreateOccurrencesRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.grafeas.v1.IBatchCreateOccurrencesRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.grafeas.v1.IBatchCreateOccurrencesResponse, - protos.grafeas.v1.IBatchCreateOccurrencesRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.grafeas.v1.IBatchCreateOccurrencesResponse, - protos.grafeas.v1.IBatchCreateOccurrencesRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.grafeas.v1.IBatchCreateOccurrencesResponse, - protos.grafeas.v1.IBatchCreateOccurrencesRequest|undefined, {}|undefined - ]>|void { + protos.grafeas.v1.IBatchCreateOccurrencesRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.grafeas.v1.IBatchCreateOccurrencesResponse, + protos.grafeas.v1.IBatchCreateOccurrencesRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.grafeas.v1.IBatchCreateOccurrencesResponse, + protos.grafeas.v1.IBatchCreateOccurrencesRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('batchCreateOccurrences request %j', request); - const wrappedCallback: Callback< - protos.grafeas.v1.IBatchCreateOccurrencesResponse, - protos.grafeas.v1.IBatchCreateOccurrencesRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.grafeas.v1.IBatchCreateOccurrencesResponse, + protos.grafeas.v1.IBatchCreateOccurrencesRequest | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('batchCreateOccurrences response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.batchCreateOccurrences(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.grafeas.v1.IBatchCreateOccurrencesResponse, - protos.grafeas.v1.IBatchCreateOccurrencesRequest|undefined, - {}|undefined - ]) => { - this._log.info('batchCreateOccurrences response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .batchCreateOccurrences(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.grafeas.v1.IBatchCreateOccurrencesResponse, + protos.grafeas.v1.IBatchCreateOccurrencesRequest | undefined, + {} | undefined, + ]) => { + this._log.info('batchCreateOccurrences response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Updates the specified occurrence. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The name of the occurrence in the form of - * `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. - * @param {grafeas.v1.Occurrence} request.occurrence - * The updated occurrence. - * @param {google.protobuf.FieldMask} request.updateMask - * The fields to update. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.grafeas.v1.Occurrence|Occurrence}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.update_occurrence.js - * region_tag:containeranalysis_v1_generated_Grafeas_UpdateOccurrence_async - */ + /** + * Updates the specified occurrence. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The name of the occurrence in the form of + * `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. + * @param {grafeas.v1.Occurrence} request.occurrence + * The updated occurrence. + * @param {google.protobuf.FieldMask} request.updateMask + * The fields to update. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.grafeas.v1.Occurrence|Occurrence}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.update_occurrence.js + * region_tag:containeranalysis_v1_generated_Grafeas_UpdateOccurrence_async + */ updateOccurrence( - request?: protos.grafeas.v1.IUpdateOccurrenceRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IUpdateOccurrenceRequest|undefined, {}|undefined - ]>; + request?: protos.grafeas.v1.IUpdateOccurrenceRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IUpdateOccurrenceRequest | undefined, + {} | undefined, + ] + >; updateOccurrence( - request: protos.grafeas.v1.IUpdateOccurrenceRequest, - options: CallOptions, - callback: Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IUpdateOccurrenceRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IUpdateOccurrenceRequest, + options: CallOptions, + callback: Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IUpdateOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): void; updateOccurrence( - request: protos.grafeas.v1.IUpdateOccurrenceRequest, - callback: Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IUpdateOccurrenceRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IUpdateOccurrenceRequest, + callback: Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IUpdateOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): void; updateOccurrence( - request?: protos.grafeas.v1.IUpdateOccurrenceRequest, - optionsOrCallback?: CallOptions|Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IUpdateOccurrenceRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.grafeas.v1.IUpdateOccurrenceRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IUpdateOccurrenceRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IUpdateOccurrenceRequest|undefined, {}|undefined - ]>|void { + protos.grafeas.v1.IUpdateOccurrenceRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IUpdateOccurrenceRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IUpdateOccurrenceRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('updateOccurrence request %j', request); - const wrappedCallback: Callback< - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IUpdateOccurrenceRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IUpdateOccurrenceRequest | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('updateOccurrence response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.updateOccurrence(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.grafeas.v1.IOccurrence, - protos.grafeas.v1.IUpdateOccurrenceRequest|undefined, - {}|undefined - ]) => { - this._log.info('updateOccurrence response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .updateOccurrence(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.grafeas.v1.IOccurrence, + protos.grafeas.v1.IUpdateOccurrenceRequest | undefined, + {} | undefined, + ]) => { + this._log.info('updateOccurrence response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets the note attached to the specified occurrence. Consumer projects can - * use this method to get a note that belongs to a provider project. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The name of the occurrence in the form of - * `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.grafeas.v1.Note|Note}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.get_occurrence_note.js - * region_tag:containeranalysis_v1_generated_Grafeas_GetOccurrenceNote_async - */ + /** + * Gets the note attached to the specified occurrence. Consumer projects can + * use this method to get a note that belongs to a provider project. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The name of the occurrence in the form of + * `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.grafeas.v1.Note|Note}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.get_occurrence_note.js + * region_tag:containeranalysis_v1_generated_Grafeas_GetOccurrenceNote_async + */ getOccurrenceNote( - request?: protos.grafeas.v1.IGetOccurrenceNoteRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetOccurrenceNoteRequest|undefined, {}|undefined - ]>; + request?: protos.grafeas.v1.IGetOccurrenceNoteRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetOccurrenceNoteRequest | undefined, + {} | undefined, + ] + >; getOccurrenceNote( - request: protos.grafeas.v1.IGetOccurrenceNoteRequest, - options: CallOptions, - callback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetOccurrenceNoteRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IGetOccurrenceNoteRequest, + options: CallOptions, + callback: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetOccurrenceNoteRequest | null | undefined, + {} | null | undefined + >, + ): void; getOccurrenceNote( - request: protos.grafeas.v1.IGetOccurrenceNoteRequest, - callback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetOccurrenceNoteRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IGetOccurrenceNoteRequest, + callback: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetOccurrenceNoteRequest | null | undefined, + {} | null | undefined + >, + ): void; getOccurrenceNote( - request?: protos.grafeas.v1.IGetOccurrenceNoteRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.grafeas.v1.IGetOccurrenceNoteRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.grafeas.v1.INote, - protos.grafeas.v1.IGetOccurrenceNoteRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetOccurrenceNoteRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetOccurrenceNoteRequest|undefined, {}|undefined - ]>|void { + protos.grafeas.v1.IGetOccurrenceNoteRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetOccurrenceNoteRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetOccurrenceNoteRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('getOccurrenceNote request %j', request); - const wrappedCallback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetOccurrenceNoteRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetOccurrenceNoteRequest | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('getOccurrenceNote response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.getOccurrenceNote(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetOccurrenceNoteRequest|undefined, - {}|undefined - ]) => { - this._log.info('getOccurrenceNote response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .getOccurrenceNote(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetOccurrenceNoteRequest | undefined, + {} | undefined, + ]) => { + this._log.info('getOccurrenceNote response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Gets the specified note. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The name of the note in the form of - * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.grafeas.v1.Note|Note}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.get_note.js - * region_tag:containeranalysis_v1_generated_Grafeas_GetNote_async - */ + /** + * Gets the specified note. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The name of the note in the form of + * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.grafeas.v1.Note|Note}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.get_note.js + * region_tag:containeranalysis_v1_generated_Grafeas_GetNote_async + */ getNote( - request?: protos.grafeas.v1.IGetNoteRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetNoteRequest|undefined, {}|undefined - ]>; + request?: protos.grafeas.v1.IGetNoteRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetNoteRequest | undefined, + {} | undefined, + ] + >; getNote( - request: protos.grafeas.v1.IGetNoteRequest, - options: CallOptions, - callback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetNoteRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IGetNoteRequest, + options: CallOptions, + callback: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetNoteRequest | null | undefined, + {} | null | undefined + >, + ): void; getNote( - request: protos.grafeas.v1.IGetNoteRequest, - callback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetNoteRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IGetNoteRequest, + callback: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetNoteRequest | null | undefined, + {} | null | undefined + >, + ): void; getNote( - request?: protos.grafeas.v1.IGetNoteRequest, - optionsOrCallback?: CallOptions|Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetNoteRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.grafeas.v1.IGetNoteRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.grafeas.v1.INote, - protos.grafeas.v1.IGetNoteRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetNoteRequest|undefined, {}|undefined - ]>|void { + protos.grafeas.v1.IGetNoteRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetNoteRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetNoteRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('getNote request %j', request); - const wrappedCallback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetNoteRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetNoteRequest | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('getNote response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.getNote(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.grafeas.v1.INote, - protos.grafeas.v1.IGetNoteRequest|undefined, - {}|undefined - ]) => { - this._log.info('getNote response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .getNote(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.grafeas.v1.INote, + protos.grafeas.v1.IGetNoteRequest | undefined, + {} | undefined, + ]) => { + this._log.info('getNote response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Deletes the specified note. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The name of the note in the form of - * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.google.protobuf.Empty|Empty}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.delete_note.js - * region_tag:containeranalysis_v1_generated_Grafeas_DeleteNote_async - */ + /** + * Deletes the specified note. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The name of the note in the form of + * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.google.protobuf.Empty|Empty}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.delete_note.js + * region_tag:containeranalysis_v1_generated_Grafeas_DeleteNote_async + */ deleteNote( - request?: protos.grafeas.v1.IDeleteNoteRequest, - options?: CallOptions): - Promise<[ - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteNoteRequest|undefined, {}|undefined - ]>; + request?: protos.grafeas.v1.IDeleteNoteRequest, + options?: CallOptions, + ): Promise< + [ + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteNoteRequest | undefined, + {} | undefined, + ] + >; deleteNote( - request: protos.grafeas.v1.IDeleteNoteRequest, - options: CallOptions, - callback: Callback< - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteNoteRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IDeleteNoteRequest, + options: CallOptions, + callback: Callback< + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteNoteRequest | null | undefined, + {} | null | undefined + >, + ): void; deleteNote( - request: protos.grafeas.v1.IDeleteNoteRequest, - callback: Callback< - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteNoteRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IDeleteNoteRequest, + callback: Callback< + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteNoteRequest | null | undefined, + {} | null | undefined + >, + ): void; deleteNote( - request?: protos.grafeas.v1.IDeleteNoteRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.grafeas.v1.IDeleteNoteRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteNoteRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteNoteRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteNoteRequest|undefined, {}|undefined - ]>|void { + protos.grafeas.v1.IDeleteNoteRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteNoteRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteNoteRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('deleteNote request %j', request); - const wrappedCallback: Callback< - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteNoteRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteNoteRequest | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('deleteNote response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.deleteNote(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.google.protobuf.IEmpty, - protos.grafeas.v1.IDeleteNoteRequest|undefined, - {}|undefined - ]) => { - this._log.info('deleteNote response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .deleteNote(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.google.protobuf.IEmpty, + protos.grafeas.v1.IDeleteNoteRequest | undefined, + {} | undefined, + ]) => { + this._log.info('deleteNote response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Creates a new note. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * The name of the project in the form of `projects/[PROJECT_ID]`, under which - * the note is to be created. - * @param {string} request.noteId - * The ID to use for this note. - * @param {grafeas.v1.Note} request.note - * The note to create. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.grafeas.v1.Note|Note}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.create_note.js - * region_tag:containeranalysis_v1_generated_Grafeas_CreateNote_async - */ + /** + * Creates a new note. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The name of the project in the form of `projects/[PROJECT_ID]`, under which + * the note is to be created. + * @param {string} request.noteId + * The ID to use for this note. + * @param {grafeas.v1.Note} request.note + * The note to create. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.grafeas.v1.Note|Note}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.create_note.js + * region_tag:containeranalysis_v1_generated_Grafeas_CreateNote_async + */ createNote( - request?: protos.grafeas.v1.ICreateNoteRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.INote, - protos.grafeas.v1.ICreateNoteRequest|undefined, {}|undefined - ]>; + request?: protos.grafeas.v1.ICreateNoteRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.INote, + protos.grafeas.v1.ICreateNoteRequest | undefined, + {} | undefined, + ] + >; createNote( - request: protos.grafeas.v1.ICreateNoteRequest, - options: CallOptions, - callback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.ICreateNoteRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.ICreateNoteRequest, + options: CallOptions, + callback: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.ICreateNoteRequest | null | undefined, + {} | null | undefined + >, + ): void; createNote( - request: protos.grafeas.v1.ICreateNoteRequest, - callback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.ICreateNoteRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.ICreateNoteRequest, + callback: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.ICreateNoteRequest | null | undefined, + {} | null | undefined + >, + ): void; createNote( - request?: protos.grafeas.v1.ICreateNoteRequest, - optionsOrCallback?: CallOptions|Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.ICreateNoteRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< + request?: protos.grafeas.v1.ICreateNoteRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.grafeas.v1.INote, - protos.grafeas.v1.ICreateNoteRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.grafeas.v1.INote, - protos.grafeas.v1.ICreateNoteRequest|undefined, {}|undefined - ]>|void { + protos.grafeas.v1.ICreateNoteRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.ICreateNoteRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.grafeas.v1.INote, + protos.grafeas.v1.ICreateNoteRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('createNote request %j', request); - const wrappedCallback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.ICreateNoteRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.ICreateNoteRequest | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('createNote response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.createNote(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.grafeas.v1.INote, - protos.grafeas.v1.ICreateNoteRequest|undefined, - {}|undefined - ]) => { - this._log.info('createNote response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .createNote(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.grafeas.v1.INote, + protos.grafeas.v1.ICreateNoteRequest | undefined, + {} | undefined, + ]) => { + this._log.info('createNote response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Creates new notes in batch. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * The name of the project in the form of `projects/[PROJECT_ID]`, under which - * the notes are to be created. - * @param {number[]} request.notes - * The notes to create. Max allowed length is 1000. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.grafeas.v1.BatchCreateNotesResponse|BatchCreateNotesResponse}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.batch_create_notes.js - * region_tag:containeranalysis_v1_generated_Grafeas_BatchCreateNotes_async - */ + /** + * Creates new notes in batch. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The name of the project in the form of `projects/[PROJECT_ID]`, under which + * the notes are to be created. + * @param {number[]} request.notes + * The notes to create. Max allowed length is 1000. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.grafeas.v1.BatchCreateNotesResponse|BatchCreateNotesResponse}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.batch_create_notes.js + * region_tag:containeranalysis_v1_generated_Grafeas_BatchCreateNotes_async + */ batchCreateNotes( - request?: protos.grafeas.v1.IBatchCreateNotesRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.IBatchCreateNotesResponse, - protos.grafeas.v1.IBatchCreateNotesRequest|undefined, {}|undefined - ]>; + request?: protos.grafeas.v1.IBatchCreateNotesRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.IBatchCreateNotesResponse, + protos.grafeas.v1.IBatchCreateNotesRequest | undefined, + {} | undefined, + ] + >; batchCreateNotes( - request: protos.grafeas.v1.IBatchCreateNotesRequest, - options: CallOptions, - callback: Callback< - protos.grafeas.v1.IBatchCreateNotesResponse, - protos.grafeas.v1.IBatchCreateNotesRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IBatchCreateNotesRequest, + options: CallOptions, + callback: Callback< + protos.grafeas.v1.IBatchCreateNotesResponse, + protos.grafeas.v1.IBatchCreateNotesRequest | null | undefined, + {} | null | undefined + >, + ): void; batchCreateNotes( - request: protos.grafeas.v1.IBatchCreateNotesRequest, - callback: Callback< - protos.grafeas.v1.IBatchCreateNotesResponse, - protos.grafeas.v1.IBatchCreateNotesRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IBatchCreateNotesRequest, + callback: Callback< + protos.grafeas.v1.IBatchCreateNotesResponse, + protos.grafeas.v1.IBatchCreateNotesRequest | null | undefined, + {} | null | undefined + >, + ): void; batchCreateNotes( - request?: protos.grafeas.v1.IBatchCreateNotesRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.grafeas.v1.IBatchCreateNotesRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.grafeas.v1.IBatchCreateNotesResponse, - protos.grafeas.v1.IBatchCreateNotesRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.grafeas.v1.IBatchCreateNotesResponse, - protos.grafeas.v1.IBatchCreateNotesRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.grafeas.v1.IBatchCreateNotesResponse, - protos.grafeas.v1.IBatchCreateNotesRequest|undefined, {}|undefined - ]>|void { + protos.grafeas.v1.IBatchCreateNotesRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.grafeas.v1.IBatchCreateNotesResponse, + protos.grafeas.v1.IBatchCreateNotesRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.grafeas.v1.IBatchCreateNotesResponse, + protos.grafeas.v1.IBatchCreateNotesRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('batchCreateNotes request %j', request); - const wrappedCallback: Callback< - protos.grafeas.v1.IBatchCreateNotesResponse, - protos.grafeas.v1.IBatchCreateNotesRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.grafeas.v1.IBatchCreateNotesResponse, + protos.grafeas.v1.IBatchCreateNotesRequest | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('batchCreateNotes response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.batchCreateNotes(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.grafeas.v1.IBatchCreateNotesResponse, - protos.grafeas.v1.IBatchCreateNotesRequest|undefined, - {}|undefined - ]) => { - this._log.info('batchCreateNotes response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .batchCreateNotes(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.grafeas.v1.IBatchCreateNotesResponse, + protos.grafeas.v1.IBatchCreateNotesRequest | undefined, + {} | undefined, + ]) => { + this._log.info('batchCreateNotes response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } -/** - * Updates the specified note. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The name of the note in the form of - * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. - * @param {grafeas.v1.Note} request.note - * The updated note. - * @param {google.protobuf.FieldMask} request.updateMask - * The fields to update. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing {@link protos.grafeas.v1.Note|Note}. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.update_note.js - * region_tag:containeranalysis_v1_generated_Grafeas_UpdateNote_async - */ + /** + * Updates the specified note. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The name of the note in the form of + * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. + * @param {grafeas.v1.Note} request.note + * The updated note. + * @param {google.protobuf.FieldMask} request.updateMask + * The fields to update. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing {@link protos.grafeas.v1.Note|Note}. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.update_note.js + * region_tag:containeranalysis_v1_generated_Grafeas_UpdateNote_async + */ updateNote( - request?: protos.grafeas.v1.IUpdateNoteRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.INote, - protos.grafeas.v1.IUpdateNoteRequest|undefined, {}|undefined - ]>; + request?: protos.grafeas.v1.IUpdateNoteRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.INote, + protos.grafeas.v1.IUpdateNoteRequest | undefined, + {} | undefined, + ] + >; updateNote( - request: protos.grafeas.v1.IUpdateNoteRequest, - options: CallOptions, - callback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IUpdateNoteRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IUpdateNoteRequest, + options: CallOptions, + callback: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IUpdateNoteRequest | null | undefined, + {} | null | undefined + >, + ): void; updateNote( - request: protos.grafeas.v1.IUpdateNoteRequest, - callback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IUpdateNoteRequest|null|undefined, - {}|null|undefined>): void; + request: protos.grafeas.v1.IUpdateNoteRequest, + callback: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IUpdateNoteRequest | null | undefined, + {} | null | undefined + >, + ): void; updateNote( - request?: protos.grafeas.v1.IUpdateNoteRequest, - optionsOrCallback?: CallOptions|Callback< + request?: protos.grafeas.v1.IUpdateNoteRequest, + optionsOrCallback?: + | CallOptions + | Callback< protos.grafeas.v1.INote, - protos.grafeas.v1.IUpdateNoteRequest|null|undefined, - {}|null|undefined>, - callback?: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IUpdateNoteRequest|null|undefined, - {}|null|undefined>): - Promise<[ - protos.grafeas.v1.INote, - protos.grafeas.v1.IUpdateNoteRequest|undefined, {}|undefined - ]>|void { + protos.grafeas.v1.IUpdateNoteRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IUpdateNoteRequest | null | undefined, + {} | null | undefined + >, + ): Promise< + [ + protos.grafeas.v1.INote, + protos.grafeas.v1.IUpdateNoteRequest | undefined, + {} | undefined, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); this._log.info('updateNote request %j', request); - const wrappedCallback: Callback< - protos.grafeas.v1.INote, - protos.grafeas.v1.IUpdateNoteRequest|null|undefined, - {}|null|undefined>|undefined = callback + const wrappedCallback: + | Callback< + protos.grafeas.v1.INote, + protos.grafeas.v1.IUpdateNoteRequest | null | undefined, + {} | null | undefined + > + | undefined = callback ? (error, response, options, rawResponse) => { this._log.info('updateNote response %j', response); callback!(error, response, options, rawResponse); // We verified callback above. } : undefined; - return this.innerApiCalls.updateNote(request, options, wrappedCallback) - ?.then(([response, options, rawResponse]: [ - protos.grafeas.v1.INote, - protos.grafeas.v1.IUpdateNoteRequest|undefined, - {}|undefined - ]) => { - this._log.info('updateNote response %j', response); - return [response, options, rawResponse]; - }).catch((error: any) => { - if (error && 'statusDetails' in error && error.statusDetails instanceof Array) { - const protos = this._gaxModule.protobuf.Root.fromJSON(jsonProtos) as unknown as gax.protobuf.Type; - error.statusDetails = decodeAnyProtosInArray(error.statusDetails, protos); + return this.innerApiCalls + .updateNote(request, options, wrappedCallback) + ?.then( + ([response, options, rawResponse]: [ + protos.grafeas.v1.INote, + protos.grafeas.v1.IUpdateNoteRequest | undefined, + {} | undefined, + ]) => { + this._log.info('updateNote response %j', response); + return [response, options, rawResponse]; + }, + ) + .catch((error: any) => { + if ( + error && + 'statusDetails' in error && + error.statusDetails instanceof Array + ) { + const protos = this._gaxModule.protobuf.Root.fromJSON( + jsonProtos, + ) as unknown as gax.protobuf.Type; + error.statusDetails = decodeAnyProtosInArray( + error.statusDetails, + protos, + ); } throw error; }); } - /** - * Lists occurrences for the specified project. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * The name of the project to list occurrences for in the form of - * `projects/[PROJECT_ID]`. - * @param {string} request.filter - * The filter expression. - * @param {number} request.pageSize - * Number of occurrences to return in the list. Must be positive. Max allowed - * page size is 1000. If not specified, page size defaults to 20. - * @param {string} request.pageToken - * Token to provide to skip to a particular spot in the list. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is Array of {@link protos.grafeas.v1.Occurrence|Occurrence}. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed and will merge results from all the pages into this array. - * Note that it can affect your quota. - * We recommend using `listOccurrencesAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Lists occurrences for the specified project. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The name of the project to list occurrences for in the form of + * `projects/[PROJECT_ID]`. + * @param {string} request.filter + * The filter expression. + * @param {number} request.pageSize + * Number of occurrences to return in the list. Must be positive. Max allowed + * page size is 1000. If not specified, page size defaults to 20. + * @param {string} request.pageToken + * Token to provide to skip to a particular spot in the list. + * @param {boolean} request.returnPartialSuccess + * If set, the request will return all reachable Occurrences + * and report all unreachable regions in the `unreachable` field in + * the response. + * + * Only applicable for requests in the global region. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of {@link protos.grafeas.v1.Occurrence|Occurrence}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listOccurrencesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listOccurrences( - request?: protos.grafeas.v1.IListOccurrencesRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.IOccurrence[], - protos.grafeas.v1.IListOccurrencesRequest|null, - protos.grafeas.v1.IListOccurrencesResponse - ]>; + request?: protos.grafeas.v1.IListOccurrencesRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.IOccurrence[], + protos.grafeas.v1.IListOccurrencesRequest | null, + protos.grafeas.v1.IListOccurrencesResponse, + ] + >; listOccurrences( - request: protos.grafeas.v1.IListOccurrencesRequest, - options: CallOptions, - callback: PaginationCallback< - protos.grafeas.v1.IListOccurrencesRequest, - protos.grafeas.v1.IListOccurrencesResponse|null|undefined, - protos.grafeas.v1.IOccurrence>): void; + request: protos.grafeas.v1.IListOccurrencesRequest, + options: CallOptions, + callback: PaginationCallback< + protos.grafeas.v1.IListOccurrencesRequest, + protos.grafeas.v1.IListOccurrencesResponse | null | undefined, + protos.grafeas.v1.IOccurrence + >, + ): void; listOccurrences( - request: protos.grafeas.v1.IListOccurrencesRequest, - callback: PaginationCallback< - protos.grafeas.v1.IListOccurrencesRequest, - protos.grafeas.v1.IListOccurrencesResponse|null|undefined, - protos.grafeas.v1.IOccurrence>): void; + request: protos.grafeas.v1.IListOccurrencesRequest, + callback: PaginationCallback< + protos.grafeas.v1.IListOccurrencesRequest, + protos.grafeas.v1.IListOccurrencesResponse | null | undefined, + protos.grafeas.v1.IOccurrence + >, + ): void; listOccurrences( - request?: protos.grafeas.v1.IListOccurrencesRequest, - optionsOrCallback?: CallOptions|PaginationCallback< + request?: protos.grafeas.v1.IListOccurrencesRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< protos.grafeas.v1.IListOccurrencesRequest, - protos.grafeas.v1.IListOccurrencesResponse|null|undefined, - protos.grafeas.v1.IOccurrence>, - callback?: PaginationCallback< - protos.grafeas.v1.IListOccurrencesRequest, - protos.grafeas.v1.IListOccurrencesResponse|null|undefined, - protos.grafeas.v1.IOccurrence>): - Promise<[ - protos.grafeas.v1.IOccurrence[], - protos.grafeas.v1.IListOccurrencesRequest|null, - protos.grafeas.v1.IListOccurrencesResponse - ]>|void { + protos.grafeas.v1.IListOccurrencesResponse | null | undefined, + protos.grafeas.v1.IOccurrence + >, + callback?: PaginationCallback< + protos.grafeas.v1.IListOccurrencesRequest, + protos.grafeas.v1.IListOccurrencesResponse | null | undefined, + protos.grafeas.v1.IOccurrence + >, + ): Promise< + [ + protos.grafeas.v1.IOccurrence[], + protos.grafeas.v1.IListOccurrencesRequest | null, + protos.grafeas.v1.IListOccurrencesResponse, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: PaginationCallback< - protos.grafeas.v1.IListOccurrencesRequest, - protos.grafeas.v1.IListOccurrencesResponse|null|undefined, - protos.grafeas.v1.IOccurrence>|undefined = callback + const wrappedCallback: + | PaginationCallback< + protos.grafeas.v1.IListOccurrencesRequest, + protos.grafeas.v1.IListOccurrencesResponse | null | undefined, + protos.grafeas.v1.IOccurrence + > + | undefined = callback ? (error, values, nextPageRequest, rawResponse) => { this._log.info('listOccurrences values %j', values); callback!(error, values, nextPageRequest, rawResponse); // We verified callback above. @@ -1517,201 +1934,238 @@ export class GrafeasClient { this._log.info('listOccurrences request %j', request); return this.innerApiCalls .listOccurrences(request, options, wrappedCallback) - ?.then(([response, input, output]: [ - protos.grafeas.v1.IOccurrence[], - protos.grafeas.v1.IListOccurrencesRequest|null, - protos.grafeas.v1.IListOccurrencesResponse - ]) => { - this._log.info('listOccurrences values %j', response); - return [response, input, output]; - }); + ?.then( + ([response, input, output]: [ + protos.grafeas.v1.IOccurrence[], + protos.grafeas.v1.IListOccurrencesRequest | null, + protos.grafeas.v1.IListOccurrencesResponse, + ]) => { + this._log.info('listOccurrences values %j', response); + return [response, input, output]; + }, + ); } -/** - * Equivalent to `listOccurrences`, but returns a NodeJS Stream object. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * The name of the project to list occurrences for in the form of - * `projects/[PROJECT_ID]`. - * @param {string} request.filter - * The filter expression. - * @param {number} request.pageSize - * Number of occurrences to return in the list. Must be positive. Max allowed - * page size is 1000. If not specified, page size defaults to 20. - * @param {string} request.pageToken - * Token to provide to skip to a particular spot in the list. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Stream} - * An object stream which emits an object representing {@link protos.grafeas.v1.Occurrence|Occurrence} on 'data' event. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed. Note that it can affect your quota. - * We recommend using `listOccurrencesAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Equivalent to `listOccurrences`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The name of the project to list occurrences for in the form of + * `projects/[PROJECT_ID]`. + * @param {string} request.filter + * The filter expression. + * @param {number} request.pageSize + * Number of occurrences to return in the list. Must be positive. Max allowed + * page size is 1000. If not specified, page size defaults to 20. + * @param {string} request.pageToken + * Token to provide to skip to a particular spot in the list. + * @param {boolean} request.returnPartialSuccess + * If set, the request will return all reachable Occurrences + * and report all unreachable regions in the `unreachable` field in + * the response. + * + * Only applicable for requests in the global region. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing {@link protos.grafeas.v1.Occurrence|Occurrence} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listOccurrencesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listOccurrencesStream( - request?: protos.grafeas.v1.IListOccurrencesRequest, - options?: CallOptions): - Transform{ + request?: protos.grafeas.v1.IListOccurrencesRequest, + options?: CallOptions, + ): Transform { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); const defaultCallSettings = this._defaults['listOccurrences']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listOccurrences stream %j', request); return this.descriptors.page.listOccurrences.createStream( this.innerApiCalls.listOccurrences as GaxCall, request, - callSettings + callSettings, ); } -/** - * Equivalent to `listOccurrences`, but returns an iterable object. - * - * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * The name of the project to list occurrences for in the form of - * `projects/[PROJECT_ID]`. - * @param {string} request.filter - * The filter expression. - * @param {number} request.pageSize - * Number of occurrences to return in the list. Must be positive. Max allowed - * page size is 1000. If not specified, page size defaults to 20. - * @param {string} request.pageToken - * Token to provide to skip to a particular spot in the list. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Object} - * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. - * When you iterate the returned iterable, each element will be an object representing - * {@link protos.grafeas.v1.Occurrence|Occurrence}. The API will be called under the hood as needed, once per the page, - * so you can stop the iteration when you don't need more results. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.list_occurrences.js - * region_tag:containeranalysis_v1_generated_Grafeas_ListOccurrences_async - */ + /** + * Equivalent to `listOccurrences`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The name of the project to list occurrences for in the form of + * `projects/[PROJECT_ID]`. + * @param {string} request.filter + * The filter expression. + * @param {number} request.pageSize + * Number of occurrences to return in the list. Must be positive. Max allowed + * page size is 1000. If not specified, page size defaults to 20. + * @param {string} request.pageToken + * Token to provide to skip to a particular spot in the list. + * @param {boolean} request.returnPartialSuccess + * If set, the request will return all reachable Occurrences + * and report all unreachable regions in the `unreachable` field in + * the response. + * + * Only applicable for requests in the global region. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. + * When you iterate the returned iterable, each element will be an object representing + * {@link protos.grafeas.v1.Occurrence|Occurrence}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.list_occurrences.js + * region_tag:containeranalysis_v1_generated_Grafeas_ListOccurrences_async + */ listOccurrencesAsync( - request?: protos.grafeas.v1.IListOccurrencesRequest, - options?: CallOptions): - AsyncIterable{ + request?: protos.grafeas.v1.IListOccurrencesRequest, + options?: CallOptions, + ): AsyncIterable { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); const defaultCallSettings = this._defaults['listOccurrences']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listOccurrences iterate %j', request); return this.descriptors.page.listOccurrences.asyncIterate( this.innerApiCalls['listOccurrences'] as GaxCall, request as {}, - callSettings + callSettings, ) as AsyncIterable; } - /** - * Lists notes for the specified project. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * The name of the project to list notes for in the form of - * `projects/[PROJECT_ID]`. - * @param {string} request.filter - * The filter expression. - * @param {number} request.pageSize - * Number of notes to return in the list. Must be positive. Max allowed page - * size is 1000. If not specified, page size defaults to 20. - * @param {string} request.pageToken - * Token to provide to skip to a particular spot in the list. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is Array of {@link protos.grafeas.v1.Note|Note}. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed and will merge results from all the pages into this array. - * Note that it can affect your quota. - * We recommend using `listNotesAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Lists notes for the specified project. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The name of the project to list notes for in the form of + * `projects/[PROJECT_ID]`. + * @param {string} request.filter + * The filter expression. + * @param {number} request.pageSize + * Number of notes to return in the list. Must be positive. Max allowed page + * size is 1000. If not specified, page size defaults to 20. + * @param {string} request.pageToken + * Token to provide to skip to a particular spot in the list. + * @param {boolean} request.returnPartialSuccess + * If set, the request will return all reachable Notes + * and report all unreachable regions in the `unreachable` field in + * the response. + * + * Only applicable for requests in the global region. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of {@link protos.grafeas.v1.Note|Note}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listNotesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listNotes( - request?: protos.grafeas.v1.IListNotesRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.INote[], - protos.grafeas.v1.IListNotesRequest|null, - protos.grafeas.v1.IListNotesResponse - ]>; + request?: protos.grafeas.v1.IListNotesRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.INote[], + protos.grafeas.v1.IListNotesRequest | null, + protos.grafeas.v1.IListNotesResponse, + ] + >; listNotes( - request: protos.grafeas.v1.IListNotesRequest, - options: CallOptions, - callback: PaginationCallback< - protos.grafeas.v1.IListNotesRequest, - protos.grafeas.v1.IListNotesResponse|null|undefined, - protos.grafeas.v1.INote>): void; + request: protos.grafeas.v1.IListNotesRequest, + options: CallOptions, + callback: PaginationCallback< + protos.grafeas.v1.IListNotesRequest, + protos.grafeas.v1.IListNotesResponse | null | undefined, + protos.grafeas.v1.INote + >, + ): void; listNotes( - request: protos.grafeas.v1.IListNotesRequest, - callback: PaginationCallback< - protos.grafeas.v1.IListNotesRequest, - protos.grafeas.v1.IListNotesResponse|null|undefined, - protos.grafeas.v1.INote>): void; + request: protos.grafeas.v1.IListNotesRequest, + callback: PaginationCallback< + protos.grafeas.v1.IListNotesRequest, + protos.grafeas.v1.IListNotesResponse | null | undefined, + protos.grafeas.v1.INote + >, + ): void; listNotes( - request?: protos.grafeas.v1.IListNotesRequest, - optionsOrCallback?: CallOptions|PaginationCallback< - protos.grafeas.v1.IListNotesRequest, - protos.grafeas.v1.IListNotesResponse|null|undefined, - protos.grafeas.v1.INote>, - callback?: PaginationCallback< + request?: protos.grafeas.v1.IListNotesRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< protos.grafeas.v1.IListNotesRequest, - protos.grafeas.v1.IListNotesResponse|null|undefined, - protos.grafeas.v1.INote>): - Promise<[ - protos.grafeas.v1.INote[], - protos.grafeas.v1.IListNotesRequest|null, - protos.grafeas.v1.IListNotesResponse - ]>|void { + protos.grafeas.v1.IListNotesResponse | null | undefined, + protos.grafeas.v1.INote + >, + callback?: PaginationCallback< + protos.grafeas.v1.IListNotesRequest, + protos.grafeas.v1.IListNotesResponse | null | undefined, + protos.grafeas.v1.INote + >, + ): Promise< + [ + protos.grafeas.v1.INote[], + protos.grafeas.v1.IListNotesRequest | null, + protos.grafeas.v1.IListNotesResponse, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: PaginationCallback< - protos.grafeas.v1.IListNotesRequest, - protos.grafeas.v1.IListNotesResponse|null|undefined, - protos.grafeas.v1.INote>|undefined = callback + const wrappedCallback: + | PaginationCallback< + protos.grafeas.v1.IListNotesRequest, + protos.grafeas.v1.IListNotesResponse | null | undefined, + protos.grafeas.v1.INote + > + | undefined = callback ? (error, values, nextPageRequest, rawResponse) => { this._log.info('listNotes values %j', values); callback!(error, values, nextPageRequest, rawResponse); // We verified callback above. @@ -1720,202 +2174,233 @@ export class GrafeasClient { this._log.info('listNotes request %j', request); return this.innerApiCalls .listNotes(request, options, wrappedCallback) - ?.then(([response, input, output]: [ - protos.grafeas.v1.INote[], - protos.grafeas.v1.IListNotesRequest|null, - protos.grafeas.v1.IListNotesResponse - ]) => { - this._log.info('listNotes values %j', response); - return [response, input, output]; - }); + ?.then( + ([response, input, output]: [ + protos.grafeas.v1.INote[], + protos.grafeas.v1.IListNotesRequest | null, + protos.grafeas.v1.IListNotesResponse, + ]) => { + this._log.info('listNotes values %j', response); + return [response, input, output]; + }, + ); } -/** - * Equivalent to `listNotes`, but returns a NodeJS Stream object. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * The name of the project to list notes for in the form of - * `projects/[PROJECT_ID]`. - * @param {string} request.filter - * The filter expression. - * @param {number} request.pageSize - * Number of notes to return in the list. Must be positive. Max allowed page - * size is 1000. If not specified, page size defaults to 20. - * @param {string} request.pageToken - * Token to provide to skip to a particular spot in the list. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Stream} - * An object stream which emits an object representing {@link protos.grafeas.v1.Note|Note} on 'data' event. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed. Note that it can affect your quota. - * We recommend using `listNotesAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Equivalent to `listNotes`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The name of the project to list notes for in the form of + * `projects/[PROJECT_ID]`. + * @param {string} request.filter + * The filter expression. + * @param {number} request.pageSize + * Number of notes to return in the list. Must be positive. Max allowed page + * size is 1000. If not specified, page size defaults to 20. + * @param {string} request.pageToken + * Token to provide to skip to a particular spot in the list. + * @param {boolean} request.returnPartialSuccess + * If set, the request will return all reachable Notes + * and report all unreachable regions in the `unreachable` field in + * the response. + * + * Only applicable for requests in the global region. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing {@link protos.grafeas.v1.Note|Note} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listNotesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listNotesStream( - request?: protos.grafeas.v1.IListNotesRequest, - options?: CallOptions): - Transform{ + request?: protos.grafeas.v1.IListNotesRequest, + options?: CallOptions, + ): Transform { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); const defaultCallSettings = this._defaults['listNotes']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listNotes stream %j', request); return this.descriptors.page.listNotes.createStream( this.innerApiCalls.listNotes as GaxCall, request, - callSettings + callSettings, ); } -/** - * Equivalent to `listNotes`, but returns an iterable object. - * - * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * The name of the project to list notes for in the form of - * `projects/[PROJECT_ID]`. - * @param {string} request.filter - * The filter expression. - * @param {number} request.pageSize - * Number of notes to return in the list. Must be positive. Max allowed page - * size is 1000. If not specified, page size defaults to 20. - * @param {string} request.pageToken - * Token to provide to skip to a particular spot in the list. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Object} - * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. - * When you iterate the returned iterable, each element will be an object representing - * {@link protos.grafeas.v1.Note|Note}. The API will be called under the hood as needed, once per the page, - * so you can stop the iteration when you don't need more results. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.list_notes.js - * region_tag:containeranalysis_v1_generated_Grafeas_ListNotes_async - */ + /** + * Equivalent to `listNotes`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The name of the project to list notes for in the form of + * `projects/[PROJECT_ID]`. + * @param {string} request.filter + * The filter expression. + * @param {number} request.pageSize + * Number of notes to return in the list. Must be positive. Max allowed page + * size is 1000. If not specified, page size defaults to 20. + * @param {string} request.pageToken + * Token to provide to skip to a particular spot in the list. + * @param {boolean} request.returnPartialSuccess + * If set, the request will return all reachable Notes + * and report all unreachable regions in the `unreachable` field in + * the response. + * + * Only applicable for requests in the global region. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. + * When you iterate the returned iterable, each element will be an object representing + * {@link protos.grafeas.v1.Note|Note}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.list_notes.js + * region_tag:containeranalysis_v1_generated_Grafeas_ListNotes_async + */ listNotesAsync( - request?: protos.grafeas.v1.IListNotesRequest, - options?: CallOptions): - AsyncIterable{ + request?: protos.grafeas.v1.IListNotesRequest, + options?: CallOptions, + ): AsyncIterable { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'parent': request.parent ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + parent: request.parent ?? '', + }); const defaultCallSettings = this._defaults['listNotes']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listNotes iterate %j', request); return this.descriptors.page.listNotes.asyncIterate( this.innerApiCalls['listNotes'] as GaxCall, request as {}, - callSettings + callSettings, ) as AsyncIterable; } - /** - * Lists occurrences referencing the specified note. Provider projects can use - * this method to get all occurrences across consumer projects referencing the - * specified note. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The name of the note to list occurrences for in the form of - * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. - * @param {string} request.filter - * The filter expression. - * @param {number} request.pageSize - * Number of occurrences to return in the list. - * @param {string} request.pageToken - * Token to provide to skip to a particular spot in the list. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is Array of {@link protos.grafeas.v1.Occurrence|Occurrence}. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed and will merge results from all the pages into this array. - * Note that it can affect your quota. - * We recommend using `listNoteOccurrencesAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Lists occurrences referencing the specified note. Provider projects can use + * this method to get all occurrences across consumer projects referencing the + * specified note. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The name of the note to list occurrences for in the form of + * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. + * @param {string} request.filter + * The filter expression. + * @param {number} request.pageSize + * Number of occurrences to return in the list. + * @param {string} request.pageToken + * Token to provide to skip to a particular spot in the list. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of {@link protos.grafeas.v1.Occurrence|Occurrence}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listNoteOccurrencesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listNoteOccurrences( - request?: protos.grafeas.v1.IListNoteOccurrencesRequest, - options?: CallOptions): - Promise<[ - protos.grafeas.v1.IOccurrence[], - protos.grafeas.v1.IListNoteOccurrencesRequest|null, - protos.grafeas.v1.IListNoteOccurrencesResponse - ]>; + request?: protos.grafeas.v1.IListNoteOccurrencesRequest, + options?: CallOptions, + ): Promise< + [ + protos.grafeas.v1.IOccurrence[], + protos.grafeas.v1.IListNoteOccurrencesRequest | null, + protos.grafeas.v1.IListNoteOccurrencesResponse, + ] + >; listNoteOccurrences( - request: protos.grafeas.v1.IListNoteOccurrencesRequest, - options: CallOptions, - callback: PaginationCallback< - protos.grafeas.v1.IListNoteOccurrencesRequest, - protos.grafeas.v1.IListNoteOccurrencesResponse|null|undefined, - protos.grafeas.v1.IOccurrence>): void; + request: protos.grafeas.v1.IListNoteOccurrencesRequest, + options: CallOptions, + callback: PaginationCallback< + protos.grafeas.v1.IListNoteOccurrencesRequest, + protos.grafeas.v1.IListNoteOccurrencesResponse | null | undefined, + protos.grafeas.v1.IOccurrence + >, + ): void; listNoteOccurrences( - request: protos.grafeas.v1.IListNoteOccurrencesRequest, - callback: PaginationCallback< - protos.grafeas.v1.IListNoteOccurrencesRequest, - protos.grafeas.v1.IListNoteOccurrencesResponse|null|undefined, - protos.grafeas.v1.IOccurrence>): void; + request: protos.grafeas.v1.IListNoteOccurrencesRequest, + callback: PaginationCallback< + protos.grafeas.v1.IListNoteOccurrencesRequest, + protos.grafeas.v1.IListNoteOccurrencesResponse | null | undefined, + protos.grafeas.v1.IOccurrence + >, + ): void; listNoteOccurrences( - request?: protos.grafeas.v1.IListNoteOccurrencesRequest, - optionsOrCallback?: CallOptions|PaginationCallback< - protos.grafeas.v1.IListNoteOccurrencesRequest, - protos.grafeas.v1.IListNoteOccurrencesResponse|null|undefined, - protos.grafeas.v1.IOccurrence>, - callback?: PaginationCallback< + request?: protos.grafeas.v1.IListNoteOccurrencesRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< protos.grafeas.v1.IListNoteOccurrencesRequest, - protos.grafeas.v1.IListNoteOccurrencesResponse|null|undefined, - protos.grafeas.v1.IOccurrence>): - Promise<[ - protos.grafeas.v1.IOccurrence[], - protos.grafeas.v1.IListNoteOccurrencesRequest|null, - protos.grafeas.v1.IListNoteOccurrencesResponse - ]>|void { + protos.grafeas.v1.IListNoteOccurrencesResponse | null | undefined, + protos.grafeas.v1.IOccurrence + >, + callback?: PaginationCallback< + protos.grafeas.v1.IListNoteOccurrencesRequest, + protos.grafeas.v1.IListNoteOccurrencesResponse | null | undefined, + protos.grafeas.v1.IOccurrence + >, + ): Promise< + [ + protos.grafeas.v1.IOccurrence[], + protos.grafeas.v1.IListNoteOccurrencesRequest | null, + protos.grafeas.v1.IListNoteOccurrencesResponse, + ] + > | void { request = request || {}; let options: CallOptions; if (typeof optionsOrCallback === 'function' && callback === undefined) { callback = optionsOrCallback; options = {}; - } - else { + } else { options = optionsOrCallback as CallOptions; } options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize().catch((err) => { + throw err; }); - this.initialize().catch(err => {throw err}); - const wrappedCallback: PaginationCallback< - protos.grafeas.v1.IListNoteOccurrencesRequest, - protos.grafeas.v1.IListNoteOccurrencesResponse|null|undefined, - protos.grafeas.v1.IOccurrence>|undefined = callback + const wrappedCallback: + | PaginationCallback< + protos.grafeas.v1.IListNoteOccurrencesRequest, + protos.grafeas.v1.IListNoteOccurrencesResponse | null | undefined, + protos.grafeas.v1.IOccurrence + > + | undefined = callback ? (error, values, nextPageRequest, rawResponse) => { this._log.info('listNoteOccurrences values %j', values); callback!(error, values, nextPageRequest, rawResponse); // We verified callback above. @@ -1924,112 +2409,116 @@ export class GrafeasClient { this._log.info('listNoteOccurrences request %j', request); return this.innerApiCalls .listNoteOccurrences(request, options, wrappedCallback) - ?.then(([response, input, output]: [ - protos.grafeas.v1.IOccurrence[], - protos.grafeas.v1.IListNoteOccurrencesRequest|null, - protos.grafeas.v1.IListNoteOccurrencesResponse - ]) => { - this._log.info('listNoteOccurrences values %j', response); - return [response, input, output]; - }); + ?.then( + ([response, input, output]: [ + protos.grafeas.v1.IOccurrence[], + protos.grafeas.v1.IListNoteOccurrencesRequest | null, + protos.grafeas.v1.IListNoteOccurrencesResponse, + ]) => { + this._log.info('listNoteOccurrences values %j', response); + return [response, input, output]; + }, + ); } -/** - * Equivalent to `listNoteOccurrences`, but returns a NodeJS Stream object. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The name of the note to list occurrences for in the form of - * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. - * @param {string} request.filter - * The filter expression. - * @param {number} request.pageSize - * Number of occurrences to return in the list. - * @param {string} request.pageToken - * Token to provide to skip to a particular spot in the list. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Stream} - * An object stream which emits an object representing {@link protos.grafeas.v1.Occurrence|Occurrence} on 'data' event. - * The client library will perform auto-pagination by default: it will call the API as many - * times as needed. Note that it can affect your quota. - * We recommend using `listNoteOccurrencesAsync()` - * method described below for async iteration which you can stop as needed. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - */ + /** + * Equivalent to `listNoteOccurrences`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The name of the note to list occurrences for in the form of + * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. + * @param {string} request.filter + * The filter expression. + * @param {number} request.pageSize + * Number of occurrences to return in the list. + * @param {string} request.pageToken + * Token to provide to skip to a particular spot in the list. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing {@link protos.grafeas.v1.Occurrence|Occurrence} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listNoteOccurrencesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + */ listNoteOccurrencesStream( - request?: protos.grafeas.v1.IListNoteOccurrencesRequest, - options?: CallOptions): - Transform{ + request?: protos.grafeas.v1.IListNoteOccurrencesRequest, + options?: CallOptions, + ): Transform { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); const defaultCallSettings = this._defaults['listNoteOccurrences']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listNoteOccurrences stream %j', request); return this.descriptors.page.listNoteOccurrences.createStream( this.innerApiCalls.listNoteOccurrences as GaxCall, request, - callSettings + callSettings, ); } -/** - * Equivalent to `listNoteOccurrences`, but returns an iterable object. - * - * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The name of the note to list occurrences for in the form of - * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. - * @param {string} request.filter - * The filter expression. - * @param {number} request.pageSize - * Number of occurrences to return in the list. - * @param {string} request.pageToken - * Token to provide to skip to a particular spot in the list. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Object} - * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. - * When you iterate the returned iterable, each element will be an object representing - * {@link protos.grafeas.v1.Occurrence|Occurrence}. The API will be called under the hood as needed, once per the page, - * so you can stop the iteration when you don't need more results. - * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } - * for more details and examples. - * @example include:samples/generated/v1/grafeas.list_note_occurrences.js - * region_tag:containeranalysis_v1_generated_Grafeas_ListNoteOccurrences_async - */ + /** + * Equivalent to `listNoteOccurrences`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The name of the note to list occurrences for in the form of + * `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. + * @param {string} request.filter + * The filter expression. + * @param {number} request.pageSize + * Number of occurrences to return in the list. + * @param {string} request.pageToken + * Token to provide to skip to a particular spot in the list. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. + * When you iterate the returned iterable, each element will be an object representing + * {@link protos.grafeas.v1.Occurrence|Occurrence}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } + * for more details and examples. + * @example include:samples/generated/v1/grafeas.list_note_occurrences.js + * region_tag:containeranalysis_v1_generated_Grafeas_ListNoteOccurrences_async + */ listNoteOccurrencesAsync( - request?: protos.grafeas.v1.IListNoteOccurrencesRequest, - options?: CallOptions): - AsyncIterable{ + request?: protos.grafeas.v1.IListNoteOccurrencesRequest, + options?: CallOptions, + ): AsyncIterable { request = request || {}; options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = this._gaxModule.routingHeader.fromParams({ - 'name': request.name ?? '', - }); + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); const defaultCallSettings = this._defaults['listNoteOccurrences']; const callSettings = defaultCallSettings.merge(options); - this.initialize().catch(err => {throw err}); + this.initialize().catch((err) => { + throw err; + }); this._log.info('listNoteOccurrences iterate %j', request); return this.descriptors.page.listNoteOccurrences.asyncIterate( this.innerApiCalls['listNoteOccurrences'] as GaxCall, request as {}, - callSettings + callSettings, ) as AsyncIterable; } // -------------------- @@ -2043,7 +2532,7 @@ export class GrafeasClient { * @param {string} note * @returns {string} Resource name string. */ - notePath(project:string,note:string) { + notePath(project: string, note: string) { return this.pathTemplates.notePathTemplate.render({ project: project, note: note, @@ -2079,7 +2568,7 @@ export class GrafeasClient { * @param {string} occurrence * @returns {string} Resource name string. */ - occurrencePath(project:string,occurrence:string) { + occurrencePath(project: string, occurrence: string) { return this.pathTemplates.occurrencePathTemplate.render({ project: project, occurrence: occurrence, @@ -2094,7 +2583,8 @@ export class GrafeasClient { * @returns {string} A string representing the project. */ matchProjectFromOccurrenceName(occurrenceName: string) { - return this.pathTemplates.occurrencePathTemplate.match(occurrenceName).project; + return this.pathTemplates.occurrencePathTemplate.match(occurrenceName) + .project; } /** @@ -2105,7 +2595,8 @@ export class GrafeasClient { * @returns {string} A string representing the occurrence. */ matchOccurrenceFromOccurrenceName(occurrenceName: string) { - return this.pathTemplates.occurrencePathTemplate.match(occurrenceName).occurrence; + return this.pathTemplates.occurrencePathTemplate.match(occurrenceName) + .occurrence; } /** @@ -2114,7 +2605,7 @@ export class GrafeasClient { * @param {string} project * @returns {string} Resource name string. */ - projectPath(project:string) { + projectPath(project: string) { return this.pathTemplates.projectPathTemplate.render({ project: project, }); @@ -2139,7 +2630,7 @@ export class GrafeasClient { */ close(): Promise { if (this.grafeasStub && !this._terminated) { - return this.grafeasStub.then(stub => { + return this.grafeasStub.then((stub) => { this._log.info('ending gRPC channel'); this._terminated = true; stub.close(); @@ -2147,4 +2638,4 @@ export class GrafeasClient { } return Promise.resolve(); } -} \ No newline at end of file +} diff --git a/packages/grafeas/src/v1/grafeas_proto_list.json b/packages/grafeas/src/v1/grafeas_proto_list.json index 32a258505f5d..f5c96d59364e 100644 --- a/packages/grafeas/src/v1/grafeas_proto_list.json +++ b/packages/grafeas/src/v1/grafeas_proto_list.json @@ -13,6 +13,7 @@ "../../protos/grafeas/v1/intoto_statement.proto", "../../protos/grafeas/v1/package.proto", "../../protos/grafeas/v1/provenance.proto", + "../../protos/grafeas/v1/risk.proto", "../../protos/grafeas/v1/sbom.proto", "../../protos/grafeas/v1/secret.proto", "../../protos/grafeas/v1/severity.proto", diff --git a/packages/grafeas/src/v1/index.ts b/packages/grafeas/src/v1/index.ts index c62d3218156c..31579cc2b97a 100644 --- a/packages/grafeas/src/v1/index.ts +++ b/packages/grafeas/src/v1/index.ts @@ -16,4 +16,4 @@ // ** https://github.com/googleapis/gapic-generator-typescript ** // ** All changes to this file may be overwritten. ** -export {GrafeasClient} from './grafeas_client'; +export { GrafeasClient } from './grafeas_client'; diff --git a/packages/grafeas/system-test/fixtures/sample/src/index.ts b/packages/grafeas/system-test/fixtures/sample/src/index.ts index 997c012b9eb3..0e08fa2042f5 100644 --- a/packages/grafeas/system-test/fixtures/sample/src/index.ts +++ b/packages/grafeas/system-test/fixtures/sample/src/index.ts @@ -16,7 +16,7 @@ // ** https://github.com/googleapis/gapic-generator-typescript ** // ** All changes to this file may be overwritten. ** -import {GrafeasClient} from '@google-cloud/grafeas'; +import { GrafeasClient } from '@google-cloud/grafeas'; // check that the client class type name can be used function doStuffWithGrafeasClient(client: GrafeasClient) { diff --git a/packages/grafeas/system-test/install.ts b/packages/grafeas/system-test/install.ts index 394f3362d203..ccf167042d2e 100644 --- a/packages/grafeas/system-test/install.ts +++ b/packages/grafeas/system-test/install.ts @@ -16,34 +16,36 @@ // ** https://github.com/googleapis/gapic-generator-typescript ** // ** All changes to this file may be overwritten. ** -import {packNTest} from 'pack-n-play'; -import {readFileSync} from 'fs'; -import {describe, it} from 'mocha'; +import { packNTest } from 'pack-n-play'; +import { readFileSync } from 'fs'; +import { describe, it } from 'mocha'; describe('📦 pack-n-play test', () => { - - it('TypeScript code', async function() { + it('TypeScript code', async function () { this.timeout(300000); const options = { packageDir: process.cwd(), sample: { description: 'TypeScript user can use the type definitions', - ts: readFileSync('./system-test/fixtures/sample/src/index.ts').toString() - } + ts: readFileSync( + './system-test/fixtures/sample/src/index.ts', + ).toString(), + }, }; await packNTest(options); }); - it('JavaScript code', async function() { + it('JavaScript code', async function () { this.timeout(300000); const options = { packageDir: process.cwd(), sample: { description: 'JavaScript user can use the library', - ts: readFileSync('./system-test/fixtures/sample/src/index.js').toString() - } + cjs: readFileSync( + './system-test/fixtures/sample/src/index.js', + ).toString(), + }, }; await packNTest(options); }); - }); diff --git a/packages/grafeas/test/gapic_grafeas_v1.ts b/packages/grafeas/test/gapic_grafeas_v1.ts index 45ee9148bffb..dcea7ddf72e7 100644 --- a/packages/grafeas/test/gapic_grafeas_v1.ts +++ b/packages/grafeas/test/gapic_grafeas_v1.ts @@ -19,2275 +19,2762 @@ import * as protos from '../protos/protos'; import * as assert from 'assert'; import * as sinon from 'sinon'; -import {SinonStub} from 'sinon'; -import {describe, it} from 'mocha'; +import { SinonStub } from 'sinon'; +import { describe, it } from 'mocha'; import * as grafeasModule from '../src'; -import {PassThrough} from 'stream'; +import { PassThrough } from 'stream'; -import {protobuf} from 'google-gax'; +import { protobuf } from 'google-gax'; // Dynamically loaded proto JSON is needed to get the type information // to fill in default values for request objects -const root = protobuf.Root.fromJSON(require('../protos/protos.json')).resolveAll(); +const root = protobuf.Root.fromJSON( + require('../protos/protos.json'), +).resolveAll(); // eslint-disable-next-line @typescript-eslint/no-unused-vars function getTypeDefaultValue(typeName: string, fields: string[]) { - let type = root.lookupType(typeName) as protobuf.Type; - for (const field of fields.slice(0, -1)) { - type = type.fields[field]?.resolvedType as protobuf.Type; - } - return type.fields[fields[fields.length - 1]]?.defaultValue; + let type = root.lookupType(typeName) as protobuf.Type; + for (const field of fields.slice(0, -1)) { + type = type.fields[field]?.resolvedType as protobuf.Type; + } + return type.fields[fields[fields.length - 1]]?.defaultValue; } function generateSampleMessage(instance: T) { - const filledObject = (instance.constructor as typeof protobuf.Message) - .toObject(instance as protobuf.Message, {defaults: true}); - return (instance.constructor as typeof protobuf.Message).fromObject(filledObject) as T; + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, { defaults: true }); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject, + ) as T; } function stubSimpleCall(response?: ResponseType, error?: Error) { - return error ? sinon.stub().rejects(error) : sinon.stub().resolves([response]); + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); } -function stubSimpleCallWithCallback(response?: ResponseType, error?: Error) { - return error ? sinon.stub().callsArgWith(2, error) : sinon.stub().callsArgWith(2, null, response); +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error, +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); } -function stubPageStreamingCall(responses?: ResponseType[], error?: Error) { - const pagingStub = sinon.stub(); - if (responses) { - for (let i = 0; i < responses.length; ++i) { - pagingStub.onCall(i).callsArgWith(2, null, responses[i]); - } +function stubPageStreamingCall( + responses?: ResponseType[], + error?: Error, +) { + const pagingStub = sinon.stub(); + if (responses) { + for (let i = 0; i < responses.length; ++i) { + pagingStub.onCall(i).callsArgWith(2, null, responses[i]); } - const transformStub = error ? sinon.stub().callsArgWith(2, error) : pagingStub; - const mockStream = new PassThrough({ - objectMode: true, - transform: transformStub, - }); - // trigger as many responses as needed - if (responses) { - for (let i = 0; i < responses.length; ++i) { - setImmediate(() => { mockStream.write({}); }); - } - setImmediate(() => { mockStream.end(); }); - } else { - setImmediate(() => { mockStream.write({}); }); - setImmediate(() => { mockStream.end(); }); + } + const transformStub = error + ? sinon.stub().callsArgWith(2, error) + : pagingStub; + const mockStream = new PassThrough({ + objectMode: true, + transform: transformStub, + }); + // trigger as many responses as needed + if (responses) { + for (let i = 0; i < responses.length; ++i) { + setImmediate(() => { + mockStream.write({}); + }); } - return sinon.stub().returns(mockStream); + setImmediate(() => { + mockStream.end(); + }); + } else { + setImmediate(() => { + mockStream.write({}); + }); + setImmediate(() => { + mockStream.end(); + }); + } + return sinon.stub().returns(mockStream); } -function stubAsyncIterationCall(responses?: ResponseType[], error?: Error) { - let counter = 0; - const asyncIterable = { - [Symbol.asyncIterator]() { - return { - async next() { - if (error) { - return Promise.reject(error); - } - if (counter >= responses!.length) { - return Promise.resolve({done: true, value: undefined}); - } - return Promise.resolve({done: false, value: responses![counter++]}); - } - }; - } - }; - return sinon.stub().returns(asyncIterable); +function stubAsyncIterationCall( + responses?: ResponseType[], + error?: Error, +) { + let counter = 0; + const asyncIterable = { + [Symbol.asyncIterator]() { + return { + async next() { + if (error) { + return Promise.reject(error); + } + if (counter >= responses!.length) { + return Promise.resolve({ done: true, value: undefined }); + } + return Promise.resolve({ done: false, value: responses![counter++] }); + }, + }; + }, + }; + return sinon.stub().returns(asyncIterable); } describe('v1.GrafeasClient', () => { - describe('Common methods', () => { - it('has apiEndpoint', () => { - const client = new grafeasModule.v1.GrafeasClient(); - const apiEndpoint = client.apiEndpoint; - assert.strictEqual(apiEndpoint, 'containeranalysis.googleapis.com'); - }); - - it('has universeDomain', () => { - const client = new grafeasModule.v1.GrafeasClient(); - const universeDomain = client.universeDomain; - assert.strictEqual(universeDomain, "googleapis.com"); - }); - - if (typeof process === 'object' && typeof process.emitWarning === 'function') { - it('throws DeprecationWarning if static servicePath is used', () => { - const stub = sinon.stub(process, 'emitWarning'); - const servicePath = grafeasModule.v1.GrafeasClient.servicePath; - assert.strictEqual(servicePath, 'containeranalysis.googleapis.com'); - assert(stub.called); - stub.restore(); - }); - - it('throws DeprecationWarning if static apiEndpoint is used', () => { - const stub = sinon.stub(process, 'emitWarning'); - const apiEndpoint = grafeasModule.v1.GrafeasClient.apiEndpoint; - assert.strictEqual(apiEndpoint, 'containeranalysis.googleapis.com'); - assert(stub.called); - stub.restore(); - }); - } - it('sets apiEndpoint according to universe domain camelCase', () => { - const client = new grafeasModule.v1.GrafeasClient({universeDomain: 'example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'containeranalysis.example.com'); - }); - - it('sets apiEndpoint according to universe domain snakeCase', () => { - const client = new grafeasModule.v1.GrafeasClient({universe_domain: 'example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'containeranalysis.example.com'); - }); - - if (typeof process === 'object' && 'env' in process) { - describe('GOOGLE_CLOUD_UNIVERSE_DOMAIN environment variable', () => { - it('sets apiEndpoint from environment variable', () => { - const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; - const client = new grafeasModule.v1.GrafeasClient(); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'containeranalysis.example.com'); - if (saved) { - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; - } else { - delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - } - }); - - it('value configured in code has priority over environment variable', () => { - const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; - const client = new grafeasModule.v1.GrafeasClient({universeDomain: 'configured.example.com'}); - const servicePath = client.apiEndpoint; - assert.strictEqual(servicePath, 'containeranalysis.configured.example.com'); - if (saved) { - process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; - } else { - delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; - } - }); - }); - } - it('does not allow setting both universeDomain and universe_domain', () => { - assert.throws(() => { new grafeasModule.v1.GrafeasClient({universe_domain: 'example.com', universeDomain: 'example.net'}); }); - }); - - it('has port', () => { - const port = grafeasModule.v1.GrafeasClient.port; - assert(port); - assert(typeof port === 'number'); - }); - - it('should create a client with no option', () => { - const client = new grafeasModule.v1.GrafeasClient(); - assert(client); - }); - - it('should create a client with gRPC fallback', () => { - const client = new grafeasModule.v1.GrafeasClient({ - fallback: true, - }); - assert(client); - }); - - it('has initialize method and supports deferred initialization', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - assert.strictEqual(client.grafeasStub, undefined); - await client.initialize(); - assert(client.grafeasStub); - }); - - it('has close method for the initialized client', done => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.initialize().catch(err => {throw err}); - assert(client.grafeasStub); - client.close().then(() => { - done(); - }).catch(err => {throw err}); - }); - - it('has close method for the non-initialized client', done => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - assert.strictEqual(client.grafeasStub, undefined); - client.close().then(() => { - done(); - }).catch(err => {throw err}); - }); + describe('Common methods', () => { + it('has apiEndpoint', () => { + const client = new grafeasModule.v1.GrafeasClient(); + const apiEndpoint = client.apiEndpoint; + assert.strictEqual(apiEndpoint, 'containeranalysis.googleapis.com'); + }); - it('has getProjectId method', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); - const result = await client.getProjectId(); - assert.strictEqual(result, fakeProjectId); - assert((client.auth.getProjectId as SinonStub).calledWithExactly()); - }); + it('has universeDomain', () => { + const client = new grafeasModule.v1.GrafeasClient(); + const universeDomain = client.universeDomain; + assert.strictEqual(universeDomain, 'googleapis.com'); + }); - it('has getProjectId method with callback', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.auth.getProjectId = sinon.stub().callsArgWith(0, null, fakeProjectId); - const promise = new Promise((resolve, reject) => { - client.getProjectId((err?: Error|null, projectId?: string|null) => { - if (err) { - reject(err); - } else { - resolve(projectId); - } - }); - }); - const result = await promise; - assert.strictEqual(result, fakeProjectId); - }); + if ( + typeof process === 'object' && + typeof process.emitWarning === 'function' + ) { + it('throws DeprecationWarning if static servicePath is used', () => { + const stub = sinon.stub(process, 'emitWarning'); + const servicePath = grafeasModule.v1.GrafeasClient.servicePath; + assert.strictEqual(servicePath, 'containeranalysis.googleapis.com'); + assert(stub.called); + stub.restore(); + }); + + it('throws DeprecationWarning if static apiEndpoint is used', () => { + const stub = sinon.stub(process, 'emitWarning'); + const apiEndpoint = grafeasModule.v1.GrafeasClient.apiEndpoint; + assert.strictEqual(apiEndpoint, 'containeranalysis.googleapis.com'); + assert(stub.called); + stub.restore(); + }); + } + it('sets apiEndpoint according to universe domain camelCase', () => { + const client = new grafeasModule.v1.GrafeasClient({ + universeDomain: 'example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'containeranalysis.example.com'); }); - describe('getOccurrence', () => { - it('invokes getOccurrence without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Occurrence() - ); - client.innerApiCalls.getOccurrence = stubSimpleCall(expectedResponse); - const [response] = await client.getOccurrence(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('sets apiEndpoint according to universe domain snakeCase', () => { + const client = new grafeasModule.v1.GrafeasClient({ + universe_domain: 'example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'containeranalysis.example.com'); + }); - it('invokes getOccurrence without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Occurrence() - ); - client.innerApiCalls.getOccurrence = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.getOccurrence( - request, - (err?: Error|null, result?: protos.grafeas.v1.IOccurrence|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + if (typeof process === 'object' && 'env' in process) { + describe('GOOGLE_CLOUD_UNIVERSE_DOMAIN environment variable', () => { + it('sets apiEndpoint from environment variable', () => { + const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; + const client = new grafeasModule.v1.GrafeasClient(); + const servicePath = client.apiEndpoint; + assert.strictEqual(servicePath, 'containeranalysis.example.com'); + if (saved) { + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; + } else { + delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + } + }); + + it('value configured in code has priority over environment variable', () => { + const saved = process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = 'example.com'; + const client = new grafeasModule.v1.GrafeasClient({ + universeDomain: 'configured.example.com', + }); + const servicePath = client.apiEndpoint; + assert.strictEqual( + servicePath, + 'containeranalysis.configured.example.com', + ); + if (saved) { + process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] = saved; + } else { + delete process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN']; + } + }); + }); + } + it('does not allow setting both universeDomain and universe_domain', () => { + assert.throws(() => { + new grafeasModule.v1.GrafeasClient({ + universe_domain: 'example.com', + universeDomain: 'example.net', }); + }); + }); - it('invokes getOccurrence with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.getOccurrence = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.getOccurrence(request), expectedError); - const actualRequest = (client.innerApiCalls.getOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('has port', () => { + const port = grafeasModule.v1.GrafeasClient.port; + assert(port); + assert(typeof port === 'number'); + }); - it('invokes getOccurrence with closed client', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.getOccurrence(request), expectedError); - }); + it('should create a client with no option', () => { + const client = new grafeasModule.v1.GrafeasClient(); + assert(client); }); - describe('deleteOccurrence', () => { - it('invokes deleteOccurrence without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.DeleteOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.DeleteOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.protobuf.Empty() - ); - client.innerApiCalls.deleteOccurrence = stubSimpleCall(expectedResponse); - const [response] = await client.deleteOccurrence(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.deleteOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('should create a client with gRPC fallback', () => { + const client = new grafeasModule.v1.GrafeasClient({ + fallback: true, + }); + assert(client); + }); - it('invokes deleteOccurrence without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.DeleteOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.DeleteOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.protobuf.Empty() - ); - client.innerApiCalls.deleteOccurrence = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.deleteOccurrence( - request, - (err?: Error|null, result?: protos.google.protobuf.IEmpty|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.deleteOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('has initialize method and supports deferred initialization', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + assert.strictEqual(client.grafeasStub, undefined); + await client.initialize(); + assert(client.grafeasStub); + }); - it('invokes deleteOccurrence with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.DeleteOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.DeleteOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.deleteOccurrence = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.deleteOccurrence(request), expectedError); - const actualRequest = (client.innerApiCalls.deleteOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + it('has close method for the initialized client', (done) => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.initialize().catch((err) => { + throw err; + }); + assert(client.grafeasStub); + client + .close() + .then(() => { + done(); + }) + .catch((err) => { + throw err; }); + }); - it('invokes deleteOccurrence with closed client', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.DeleteOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.DeleteOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.deleteOccurrence(request), expectedError); + it('has close method for the non-initialized client', (done) => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + assert.strictEqual(client.grafeasStub, undefined); + client + .close() + .then(() => { + done(); + }) + .catch((err) => { + throw err; }); }); - describe('createOccurrence', () => { - it('invokes createOccurrence without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.CreateOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.CreateOccurrenceRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Occurrence() - ); - client.innerApiCalls.createOccurrence = stubSimpleCall(expectedResponse); - const [response] = await client.createOccurrence(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.createOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.createOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); - it('invokes createOccurrence without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.CreateOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.CreateOccurrenceRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Occurrence() - ); - client.innerApiCalls.createOccurrence = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.createOccurrence( - request, - (err?: Error|null, result?: protos.grafeas.v1.IOccurrence|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.createOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.createOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + }); + + describe('getOccurrence', () => { + it('invokes getOccurrence without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.GetOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Occurrence(), + ); + client.innerApiCalls.getOccurrence = stubSimpleCall(expectedResponse); + const [response] = await client.getOccurrence(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.getOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes createOccurrence with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.CreateOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.CreateOccurrenceRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.createOccurrence = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.createOccurrence(request), expectedError); - const actualRequest = (client.innerApiCalls.createOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.createOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getOccurrence without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.GetOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Occurrence(), + ); + client.innerApiCalls.getOccurrence = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getOccurrence( + request, + ( + err?: Error | null, + result?: protos.grafeas.v1.IOccurrence | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.getOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes createOccurrence with closed client', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.CreateOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.CreateOccurrenceRequest', ['parent']); - request.parent = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.createOccurrence(request), expectedError); - }); + it('invokes getOccurrence with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.GetOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.getOccurrence = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.getOccurrence(request), expectedError); + const actualRequest = ( + client.innerApiCalls.getOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('batchCreateOccurrences', () => { - it('invokes batchCreateOccurrences without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.BatchCreateOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.BatchCreateOccurrencesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.BatchCreateOccurrencesResponse() - ); - client.innerApiCalls.batchCreateOccurrences = stubSimpleCall(expectedResponse); - const [response] = await client.batchCreateOccurrences(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.batchCreateOccurrences as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.batchCreateOccurrences as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getOccurrence with closed client', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.GetOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.getOccurrence(request), expectedError); + }); + }); + + describe('deleteOccurrence', () => { + it('invokes deleteOccurrence without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.DeleteOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.DeleteOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.protobuf.Empty(), + ); + client.innerApiCalls.deleteOccurrence = stubSimpleCall(expectedResponse); + const [response] = await client.deleteOccurrence(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.deleteOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes batchCreateOccurrences without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.BatchCreateOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.BatchCreateOccurrencesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.BatchCreateOccurrencesResponse() - ); - client.innerApiCalls.batchCreateOccurrences = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.batchCreateOccurrences( - request, - (err?: Error|null, result?: protos.grafeas.v1.IBatchCreateOccurrencesResponse|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.batchCreateOccurrences as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.batchCreateOccurrences as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes deleteOccurrence without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.DeleteOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.DeleteOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.protobuf.Empty(), + ); + client.innerApiCalls.deleteOccurrence = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.deleteOccurrence( + request, + ( + err?: Error | null, + result?: protos.google.protobuf.IEmpty | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.deleteOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes batchCreateOccurrences with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.BatchCreateOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.BatchCreateOccurrencesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.batchCreateOccurrences = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.batchCreateOccurrences(request), expectedError); - const actualRequest = (client.innerApiCalls.batchCreateOccurrences as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.batchCreateOccurrences as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes deleteOccurrence with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.DeleteOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.DeleteOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteOccurrence = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.deleteOccurrence(request), expectedError); + const actualRequest = ( + client.innerApiCalls.deleteOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes batchCreateOccurrences with closed client', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.BatchCreateOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.BatchCreateOccurrencesRequest', ['parent']); - request.parent = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.batchCreateOccurrences(request), expectedError); - }); + it('invokes deleteOccurrence with closed client', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.DeleteOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.DeleteOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.deleteOccurrence(request), expectedError); + }); + }); + + describe('createOccurrence', () => { + it('invokes createOccurrence without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.CreateOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.CreateOccurrenceRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Occurrence(), + ); + client.innerApiCalls.createOccurrence = stubSimpleCall(expectedResponse); + const [response] = await client.createOccurrence(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.createOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('updateOccurrence', () => { - it('invokes updateOccurrence without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.UpdateOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.UpdateOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Occurrence() - ); - client.innerApiCalls.updateOccurrence = stubSimpleCall(expectedResponse); - const [response] = await client.updateOccurrence(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.updateOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes createOccurrence without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.CreateOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.CreateOccurrenceRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Occurrence(), + ); + client.innerApiCalls.createOccurrence = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.createOccurrence( + request, + ( + err?: Error | null, + result?: protos.grafeas.v1.IOccurrence | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.createOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateOccurrence without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.UpdateOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.UpdateOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Occurrence() - ); - client.innerApiCalls.updateOccurrence = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.updateOccurrence( - request, - (err?: Error|null, result?: protos.grafeas.v1.IOccurrence|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.updateOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes createOccurrence with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.CreateOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.CreateOccurrenceRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.createOccurrence = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.createOccurrence(request), expectedError); + const actualRequest = ( + client.innerApiCalls.createOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateOccurrence with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.UpdateOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.UpdateOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.updateOccurrence = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.updateOccurrence(request), expectedError); - const actualRequest = (client.innerApiCalls.updateOccurrence as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateOccurrence as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes createOccurrence with closed client', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.CreateOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.CreateOccurrenceRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.createOccurrence(request), expectedError); + }); + }); + + describe('batchCreateOccurrences', () => { + it('invokes batchCreateOccurrences without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.BatchCreateOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.BatchCreateOccurrencesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.BatchCreateOccurrencesResponse(), + ); + client.innerApiCalls.batchCreateOccurrences = + stubSimpleCall(expectedResponse); + const [response] = await client.batchCreateOccurrences(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.batchCreateOccurrences as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.batchCreateOccurrences as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateOccurrence with closed client', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.UpdateOccurrenceRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.UpdateOccurrenceRequest', ['name']); - request.name = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.updateOccurrence(request), expectedError); - }); + it('invokes batchCreateOccurrences without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.BatchCreateOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.BatchCreateOccurrencesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.BatchCreateOccurrencesResponse(), + ); + client.innerApiCalls.batchCreateOccurrences = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.batchCreateOccurrences( + request, + ( + err?: Error | null, + result?: protos.grafeas.v1.IBatchCreateOccurrencesResponse | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.batchCreateOccurrences as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.batchCreateOccurrences as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('getOccurrenceNote', () => { - it('invokes getOccurrenceNote without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetOccurrenceNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetOccurrenceNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Note() - ); - client.innerApiCalls.getOccurrenceNote = stubSimpleCall(expectedResponse); - const [response] = await client.getOccurrenceNote(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getOccurrenceNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getOccurrenceNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes batchCreateOccurrences with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.BatchCreateOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.BatchCreateOccurrencesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.batchCreateOccurrences = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects( + client.batchCreateOccurrences(request), + expectedError, + ); + const actualRequest = ( + client.innerApiCalls.batchCreateOccurrences as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.batchCreateOccurrences as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes getOccurrenceNote without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetOccurrenceNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetOccurrenceNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Note() - ); - client.innerApiCalls.getOccurrenceNote = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.getOccurrenceNote( - request, - (err?: Error|null, result?: protos.grafeas.v1.INote|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getOccurrenceNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getOccurrenceNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes batchCreateOccurrences with closed client', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.BatchCreateOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.BatchCreateOccurrencesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects( + client.batchCreateOccurrences(request), + expectedError, + ); + }); + }); + + describe('updateOccurrence', () => { + it('invokes updateOccurrence without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.UpdateOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.UpdateOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Occurrence(), + ); + client.innerApiCalls.updateOccurrence = stubSimpleCall(expectedResponse); + const [response] = await client.updateOccurrence(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.updateOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes getOccurrenceNote with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetOccurrenceNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetOccurrenceNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.getOccurrenceNote = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.getOccurrenceNote(request), expectedError); - const actualRequest = (client.innerApiCalls.getOccurrenceNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getOccurrenceNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes updateOccurrence without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.UpdateOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.UpdateOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Occurrence(), + ); + client.innerApiCalls.updateOccurrence = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updateOccurrence( + request, + ( + err?: Error | null, + result?: protos.grafeas.v1.IOccurrence | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.updateOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes getOccurrenceNote with closed client', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetOccurrenceNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetOccurrenceNoteRequest', ['name']); - request.name = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.getOccurrenceNote(request), expectedError); - }); + it('invokes updateOccurrence with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.UpdateOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.UpdateOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.updateOccurrence = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.updateOccurrence(request), expectedError); + const actualRequest = ( + client.innerApiCalls.updateOccurrence as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateOccurrence as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('getNote', () => { - it('invokes getNote without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Note() - ); - client.innerApiCalls.getNote = stubSimpleCall(expectedResponse); - const [response] = await client.getNote(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes updateOccurrence with closed client', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.UpdateOccurrenceRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.UpdateOccurrenceRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.updateOccurrence(request), expectedError); + }); + }); + + describe('getOccurrenceNote', () => { + it('invokes getOccurrenceNote without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetOccurrenceNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.GetOccurrenceNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Note(), + ); + client.innerApiCalls.getOccurrenceNote = stubSimpleCall(expectedResponse); + const [response] = await client.getOccurrenceNote(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.getOccurrenceNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getOccurrenceNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes getNote without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Note() - ); - client.innerApiCalls.getNote = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.getNote( - request, - (err?: Error|null, result?: protos.grafeas.v1.INote|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.getNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getOccurrenceNote without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetOccurrenceNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.GetOccurrenceNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Note(), + ); + client.innerApiCalls.getOccurrenceNote = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getOccurrenceNote( + request, + (err?: Error | null, result?: protos.grafeas.v1.INote | null) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.getOccurrenceNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getOccurrenceNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes getNote with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.getNote = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.getNote(request), expectedError); - const actualRequest = (client.innerApiCalls.getNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.getNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getOccurrenceNote with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetOccurrenceNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.GetOccurrenceNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.getOccurrenceNote = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.getOccurrenceNote(request), expectedError); + const actualRequest = ( + client.innerApiCalls.getOccurrenceNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getOccurrenceNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes getNote with closed client', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.GetNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.GetNoteRequest', ['name']); - request.name = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.getNote(request), expectedError); - }); + it('invokes getOccurrenceNote with closed client', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetOccurrenceNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.GetOccurrenceNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.getOccurrenceNote(request), expectedError); + }); + }); + + describe('getNote', () => { + it('invokes getNote without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue('.grafeas.v1.GetNoteRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Note(), + ); + client.innerApiCalls.getNote = stubSimpleCall(expectedResponse); + const [response] = await client.getNote(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = (client.innerApiCalls.getNote as SinonStub).getCall( + 0, + ).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('deleteNote', () => { - it('invokes deleteNote without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.DeleteNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.DeleteNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.protobuf.Empty() - ); - client.innerApiCalls.deleteNote = stubSimpleCall(expectedResponse); - const [response] = await client.deleteNote(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.deleteNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getNote without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue('.grafeas.v1.GetNoteRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Note(), + ); + client.innerApiCalls.getNote = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getNote( + request, + (err?: Error | null, result?: protos.grafeas.v1.INote | null) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = (client.innerApiCalls.getNote as SinonStub).getCall( + 0, + ).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes deleteNote without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.DeleteNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.DeleteNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.google.protobuf.Empty() - ); - client.innerApiCalls.deleteNote = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.deleteNote( - request, - (err?: Error|null, result?: protos.google.protobuf.IEmpty|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.deleteNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getNote with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue('.grafeas.v1.GetNoteRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.getNote = stubSimpleCall(undefined, expectedError); + await assert.rejects(client.getNote(request), expectedError); + const actualRequest = (client.innerApiCalls.getNote as SinonStub).getCall( + 0, + ).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes deleteNote with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.DeleteNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.DeleteNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.deleteNote = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.deleteNote(request), expectedError); - const actualRequest = (client.innerApiCalls.deleteNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.deleteNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes getNote with closed client', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.GetNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue('.grafeas.v1.GetNoteRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.getNote(request), expectedError); + }); + }); + + describe('deleteNote', () => { + it('invokes deleteNote without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.DeleteNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.DeleteNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.protobuf.Empty(), + ); + client.innerApiCalls.deleteNote = stubSimpleCall(expectedResponse); + const [response] = await client.deleteNote(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.deleteNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes deleteNote with closed client', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.DeleteNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.DeleteNoteRequest', ['name']); - request.name = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.deleteNote(request), expectedError); - }); + it('invokes deleteNote without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.DeleteNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.DeleteNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.google.protobuf.Empty(), + ); + client.innerApiCalls.deleteNote = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.deleteNote( + request, + ( + err?: Error | null, + result?: protos.google.protobuf.IEmpty | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.deleteNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('createNote', () => { - it('invokes createNote without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.CreateNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.CreateNoteRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Note() - ); - client.innerApiCalls.createNote = stubSimpleCall(expectedResponse); - const [response] = await client.createNote(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.createNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.createNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes deleteNote with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.DeleteNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.DeleteNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteNote = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.deleteNote(request), expectedError); + const actualRequest = ( + client.innerApiCalls.deleteNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes createNote without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.CreateNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.CreateNoteRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Note() - ); - client.innerApiCalls.createNote = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.createNote( - request, - (err?: Error|null, result?: protos.grafeas.v1.INote|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.createNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.createNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes deleteNote with closed client', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.DeleteNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.DeleteNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.deleteNote(request), expectedError); + }); + }); + + describe('createNote', () => { + it('invokes createNote without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.CreateNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.CreateNoteRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Note(), + ); + client.innerApiCalls.createNote = stubSimpleCall(expectedResponse); + const [response] = await client.createNote(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.createNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes createNote with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.CreateNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.CreateNoteRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.createNote = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.createNote(request), expectedError); - const actualRequest = (client.innerApiCalls.createNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.createNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes createNote without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.CreateNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.CreateNoteRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Note(), + ); + client.innerApiCalls.createNote = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.createNote( + request, + (err?: Error | null, result?: protos.grafeas.v1.INote | null) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.createNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes createNote with closed client', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.CreateNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.CreateNoteRequest', ['parent']); - request.parent = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.createNote(request), expectedError); - }); + it('invokes createNote with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.CreateNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.CreateNoteRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.createNote = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.createNote(request), expectedError); + const actualRequest = ( + client.innerApiCalls.createNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('batchCreateNotes', () => { - it('invokes batchCreateNotes without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.BatchCreateNotesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.BatchCreateNotesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.BatchCreateNotesResponse() - ); - client.innerApiCalls.batchCreateNotes = stubSimpleCall(expectedResponse); - const [response] = await client.batchCreateNotes(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.batchCreateNotes as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.batchCreateNotes as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes createNote with closed client', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.CreateNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.CreateNoteRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.createNote(request), expectedError); + }); + }); + + describe('batchCreateNotes', () => { + it('invokes batchCreateNotes without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.BatchCreateNotesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.BatchCreateNotesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.BatchCreateNotesResponse(), + ); + client.innerApiCalls.batchCreateNotes = stubSimpleCall(expectedResponse); + const [response] = await client.batchCreateNotes(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.batchCreateNotes as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.batchCreateNotes as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes batchCreateNotes without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.BatchCreateNotesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.BatchCreateNotesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.BatchCreateNotesResponse() - ); - client.innerApiCalls.batchCreateNotes = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.batchCreateNotes( - request, - (err?: Error|null, result?: protos.grafeas.v1.IBatchCreateNotesResponse|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.batchCreateNotes as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.batchCreateNotes as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes batchCreateNotes without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.BatchCreateNotesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.BatchCreateNotesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.BatchCreateNotesResponse(), + ); + client.innerApiCalls.batchCreateNotes = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.batchCreateNotes( + request, + ( + err?: Error | null, + result?: protos.grafeas.v1.IBatchCreateNotesResponse | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.batchCreateNotes as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.batchCreateNotes as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes batchCreateNotes with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.BatchCreateNotesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.BatchCreateNotesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.batchCreateNotes = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.batchCreateNotes(request), expectedError); - const actualRequest = (client.innerApiCalls.batchCreateNotes as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.batchCreateNotes as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes batchCreateNotes with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.BatchCreateNotesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.BatchCreateNotesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.batchCreateNotes = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.batchCreateNotes(request), expectedError); + const actualRequest = ( + client.innerApiCalls.batchCreateNotes as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.batchCreateNotes as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes batchCreateNotes with closed client', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.BatchCreateNotesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.BatchCreateNotesRequest', ['parent']); - request.parent = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.batchCreateNotes(request), expectedError); - }); + it('invokes batchCreateNotes with closed client', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.BatchCreateNotesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.BatchCreateNotesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.batchCreateNotes(request), expectedError); + }); + }); + + describe('updateNote', () => { + it('invokes updateNote without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.UpdateNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.UpdateNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Note(), + ); + client.innerApiCalls.updateNote = stubSimpleCall(expectedResponse); + const [response] = await client.updateNote(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.updateNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('updateNote', () => { - it('invokes updateNote without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.UpdateNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.UpdateNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Note() - ); - client.innerApiCalls.updateNote = stubSimpleCall(expectedResponse); - const [response] = await client.updateNote(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.updateNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes updateNote without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.UpdateNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.UpdateNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = generateSampleMessage( + new protos.grafeas.v1.Note(), + ); + client.innerApiCalls.updateNote = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updateNote( + request, + (err?: Error | null, result?: protos.grafeas.v1.INote | null) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.updateNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateNote without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.UpdateNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.UpdateNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = generateSampleMessage( - new protos.grafeas.v1.Note() - ); - client.innerApiCalls.updateNote = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.updateNote( - request, - (err?: Error|null, result?: protos.grafeas.v1.INote|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.updateNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes updateNote with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.UpdateNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.UpdateNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.updateNote = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.updateNote(request), expectedError); + const actualRequest = ( + client.innerApiCalls.updateNote as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateNote as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateNote with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.UpdateNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.UpdateNoteRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.updateNote = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.updateNote(request), expectedError); - const actualRequest = (client.innerApiCalls.updateNote as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.updateNote as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes updateNote with closed client', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.UpdateNoteRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.UpdateNoteRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close().catch((err) => { + throw err; + }); + await assert.rejects(client.updateNote(request), expectedError); + }); + }); + + describe('listOccurrences', () => { + it('invokes listOccurrences without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListOccurrencesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + ]; + client.innerApiCalls.listOccurrences = stubSimpleCall(expectedResponse); + const [response] = await client.listOccurrences(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listOccurrences as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listOccurrences as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes updateNote with closed client', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.UpdateNoteRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.UpdateNoteRequest', ['name']); - request.name = defaultValue1; - const expectedError = new Error('The client has already been closed.'); - client.close().catch(err => {throw err}); - await assert.rejects(client.updateNote(request), expectedError); - }); + it('invokes listOccurrences without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListOccurrencesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + ]; + client.innerApiCalls.listOccurrences = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listOccurrences( + request, + ( + err?: Error | null, + result?: protos.grafeas.v1.IOccurrence[] | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listOccurrences as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listOccurrences as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('listOccurrences', () => { - it('invokes listOccurrences without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListOccurrencesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - ]; - client.innerApiCalls.listOccurrences = stubSimpleCall(expectedResponse); - const [response] = await client.listOccurrences(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listOccurrences as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listOccurrences as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes listOccurrences with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListOccurrencesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.listOccurrences = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.listOccurrences(request), expectedError); + const actualRequest = ( + client.innerApiCalls.listOccurrences as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listOccurrences as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listOccurrences without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListOccurrencesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - ]; - client.innerApiCalls.listOccurrences = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.listOccurrences( - request, - (err?: Error|null, result?: protos.grafeas.v1.IOccurrence[]|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listOccurrences as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listOccurrences as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes listOccurrencesStream without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListOccurrencesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + ]; + client.descriptors.page.listOccurrences.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listOccurrencesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.grafeas.v1.Occurrence[] = []; + stream.on('data', (response: protos.grafeas.v1.Occurrence) => { + responses.push(response); + }); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listOccurrences.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listOccurrences, request), + ); + assert( + (client.descriptors.page.listOccurrences.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('invokes listOccurrences with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListOccurrencesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.listOccurrences = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.listOccurrences(request), expectedError); - const actualRequest = (client.innerApiCalls.listOccurrences as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listOccurrences as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes listOccurrencesStream with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListOccurrencesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listOccurrences.createStream = + stubPageStreamingCall(undefined, expectedError); + const stream = client.listOccurrencesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.grafeas.v1.Occurrence[] = []; + stream.on('data', (response: protos.grafeas.v1.Occurrence) => { + responses.push(response); + }); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listOccurrences.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listOccurrences, request), + ); + assert( + (client.descriptors.page.listOccurrences.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('invokes listOccurrencesStream without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListOccurrencesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - ]; - client.descriptors.page.listOccurrences.createStream = stubPageStreamingCall(expectedResponse); - const stream = client.listOccurrencesStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.grafeas.v1.Occurrence[] = []; - stream.on('data', (response: protos.grafeas.v1.Occurrence) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - const responses = await promise; - assert.deepStrictEqual(responses, expectedResponse); - assert((client.descriptors.page.listOccurrences.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listOccurrences, request)); - assert( - (client.descriptors.page.listOccurrences.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('uses async iteration with listOccurrences without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListOccurrencesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + ]; + client.descriptors.page.listOccurrences.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.grafeas.v1.IOccurrence[] = []; + const iterable = client.listOccurrencesAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.descriptors.page.listOccurrences.asyncIterate as SinonStub + ).getCall(0).args[1], + request, + ); + assert( + (client.descriptors.page.listOccurrences.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('invokes listOccurrencesStream with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListOccurrencesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listOccurrences.createStream = stubPageStreamingCall(undefined, expectedError); - const stream = client.listOccurrencesStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.grafeas.v1.Occurrence[] = []; - stream.on('data', (response: protos.grafeas.v1.Occurrence) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - await assert.rejects(promise, expectedError); - assert((client.descriptors.page.listOccurrences.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listOccurrences, request)); - assert( - (client.descriptors.page.listOccurrences.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('uses async iteration with listOccurrences with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListOccurrencesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listOccurrences.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listOccurrencesAsync(request); + await assert.rejects(async () => { + const responses: protos.grafeas.v1.IOccurrence[] = []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.descriptors.page.listOccurrences.asyncIterate as SinonStub + ).getCall(0).args[1], + request, + ); + assert( + (client.descriptors.page.listOccurrences.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); + }); + + describe('listNotes', () => { + it('invokes listNotes without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNotesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNotesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Note()), + generateSampleMessage(new protos.grafeas.v1.Note()), + generateSampleMessage(new protos.grafeas.v1.Note()), + ]; + client.innerApiCalls.listNotes = stubSimpleCall(expectedResponse); + const [response] = await client.listNotes(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listNotes as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listNotes as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('uses async iteration with listOccurrences without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListOccurrencesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - ]; - client.descriptors.page.listOccurrences.asyncIterate = stubAsyncIterationCall(expectedResponse); - const responses: protos.grafeas.v1.IOccurrence[] = []; - const iterable = client.listOccurrencesAsync(request); - for await (const resource of iterable) { - responses.push(resource!); + it('invokes listNotes without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNotesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNotesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Note()), + generateSampleMessage(new protos.grafeas.v1.Note()), + generateSampleMessage(new protos.grafeas.v1.Note()), + ]; + client.innerApiCalls.listNotes = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listNotes( + request, + (err?: Error | null, result?: protos.grafeas.v1.INote[] | null) => { + if (err) { + reject(err); + } else { + resolve(result); } - assert.deepStrictEqual(responses, expectedResponse); - assert.deepStrictEqual( - (client.descriptors.page.listOccurrences.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listOccurrences.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); - - it('uses async iteration with listOccurrences with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListOccurrencesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listOccurrences.asyncIterate = stubAsyncIterationCall(undefined, expectedError); - const iterable = client.listOccurrencesAsync(request); - await assert.rejects(async () => { - const responses: protos.grafeas.v1.IOccurrence[] = []; - for await (const resource of iterable) { - responses.push(resource!); - } - }); - assert.deepStrictEqual( - (client.descriptors.page.listOccurrences.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listOccurrences.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listNotes as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listNotes as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('listNotes', () => { - it('invokes listNotes without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNotesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNotesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Note()), - generateSampleMessage(new protos.grafeas.v1.Note()), - generateSampleMessage(new protos.grafeas.v1.Note()), - ]; - client.innerApiCalls.listNotes = stubSimpleCall(expectedResponse); - const [response] = await client.listNotes(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listNotes as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listNotes as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes listNotes with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNotesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNotesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.listNotes = stubSimpleCall(undefined, expectedError); + await assert.rejects(client.listNotes(request), expectedError); + const actualRequest = ( + client.innerApiCalls.listNotes as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listNotes as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listNotes without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNotesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNotesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Note()), - generateSampleMessage(new protos.grafeas.v1.Note()), - generateSampleMessage(new protos.grafeas.v1.Note()), - ]; - client.innerApiCalls.listNotes = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.listNotes( - request, - (err?: Error|null, result?: protos.grafeas.v1.INote[]|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listNotes as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listNotes as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes listNotesStream without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNotesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNotesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Note()), + generateSampleMessage(new protos.grafeas.v1.Note()), + generateSampleMessage(new protos.grafeas.v1.Note()), + ]; + client.descriptors.page.listNotes.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listNotesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.grafeas.v1.Note[] = []; + stream.on('data', (response: protos.grafeas.v1.Note) => { + responses.push(response); + }); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listNotes.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listNotes, request), + ); + assert( + (client.descriptors.page.listNotes.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('invokes listNotes with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNotesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNotesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.listNotes = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.listNotes(request), expectedError); - const actualRequest = (client.innerApiCalls.listNotes as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listNotes as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); + it('invokes listNotesStream with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNotesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNotesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listNotes.createStream = stubPageStreamingCall( + undefined, + expectedError, + ); + const stream = client.listNotesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.grafeas.v1.Note[] = []; + stream.on('data', (response: protos.grafeas.v1.Note) => { + responses.push(response); + }); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listNotes.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listNotes, request), + ); + assert( + (client.descriptors.page.listNotes.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('invokes listNotesStream without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNotesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNotesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Note()), - generateSampleMessage(new protos.grafeas.v1.Note()), - generateSampleMessage(new protos.grafeas.v1.Note()), - ]; - client.descriptors.page.listNotes.createStream = stubPageStreamingCall(expectedResponse); - const stream = client.listNotesStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.grafeas.v1.Note[] = []; - stream.on('data', (response: protos.grafeas.v1.Note) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - const responses = await promise; - assert.deepStrictEqual(responses, expectedResponse); - assert((client.descriptors.page.listNotes.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listNotes, request)); - assert( - (client.descriptors.page.listNotes.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('uses async iteration with listNotes without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNotesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNotesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Note()), + generateSampleMessage(new protos.grafeas.v1.Note()), + generateSampleMessage(new protos.grafeas.v1.Note()), + ]; + client.descriptors.page.listNotes.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.grafeas.v1.INote[] = []; + const iterable = client.listNotesAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + (client.descriptors.page.listNotes.asyncIterate as SinonStub).getCall(0) + .args[1], + request, + ); + assert( + (client.descriptors.page.listNotes.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('invokes listNotesStream with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNotesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNotesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listNotes.createStream = stubPageStreamingCall(undefined, expectedError); - const stream = client.listNotesStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.grafeas.v1.Note[] = []; - stream.on('data', (response: protos.grafeas.v1.Note) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - await assert.rejects(promise, expectedError); - assert((client.descriptors.page.listNotes.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listNotes, request)); - assert( - (client.descriptors.page.listNotes.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('uses async iteration with listNotes with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNotesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNotesRequest', + ['parent'], + ); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listNotes.asyncIterate = stubAsyncIterationCall( + undefined, + expectedError, + ); + const iterable = client.listNotesAsync(request); + await assert.rejects(async () => { + const responses: protos.grafeas.v1.INote[] = []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + (client.descriptors.page.listNotes.asyncIterate as SinonStub).getCall(0) + .args[1], + request, + ); + assert( + (client.descriptors.page.listNotes.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); + }); + + describe('listNoteOccurrences', () => { + it('invokes listNoteOccurrences without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNoteOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNoteOccurrencesRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + ]; + client.innerApiCalls.listNoteOccurrences = + stubSimpleCall(expectedResponse); + const [response] = await client.listNoteOccurrences(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listNoteOccurrences as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listNoteOccurrences as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('uses async iteration with listNotes without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNotesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNotesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Note()), - generateSampleMessage(new protos.grafeas.v1.Note()), - generateSampleMessage(new protos.grafeas.v1.Note()), - ]; - client.descriptors.page.listNotes.asyncIterate = stubAsyncIterationCall(expectedResponse); - const responses: protos.grafeas.v1.INote[] = []; - const iterable = client.listNotesAsync(request); - for await (const resource of iterable) { - responses.push(resource!); + it('invokes listNoteOccurrences without error using callback', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNoteOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNoteOccurrencesRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + ]; + client.innerApiCalls.listNoteOccurrences = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listNoteOccurrences( + request, + ( + err?: Error | null, + result?: protos.grafeas.v1.IOccurrence[] | null, + ) => { + if (err) { + reject(err); + } else { + resolve(result); } - assert.deepStrictEqual(responses, expectedResponse); - assert.deepStrictEqual( - (client.descriptors.page.listNotes.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listNotes.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); - - it('uses async iteration with listNotes with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNotesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNotesRequest', ['parent']); - request.parent = defaultValue1; - const expectedHeaderRequestParams = `parent=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listNotes.asyncIterate = stubAsyncIterationCall(undefined, expectedError); - const iterable = client.listNotesAsync(request); - await assert.rejects(async () => { - const responses: protos.grafeas.v1.INote[] = []; - for await (const resource of iterable) { - responses.push(resource!); - } - }); - assert.deepStrictEqual( - (client.descriptors.page.listNotes.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listNotes.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + }, + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.listNoteOccurrences as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listNoteOccurrences as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); - describe('listNoteOccurrences', () => { - it('invokes listNoteOccurrences without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNoteOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNoteOccurrencesRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - ]; - client.innerApiCalls.listNoteOccurrences = stubSimpleCall(expectedResponse); - const [response] = await client.listNoteOccurrences(request); - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listNoteOccurrences as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listNoteOccurrences as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes listNoteOccurrences without error using callback', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNoteOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNoteOccurrencesRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`;const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - ]; - client.innerApiCalls.listNoteOccurrences = stubSimpleCallWithCallback(expectedResponse); - const promise = new Promise((resolve, reject) => { - client.listNoteOccurrences( - request, - (err?: Error|null, result?: protos.grafeas.v1.IOccurrence[]|null) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }); - }); - const response = await promise; - assert.deepStrictEqual(response, expectedResponse); - const actualRequest = (client.innerApiCalls.listNoteOccurrences as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listNoteOccurrences as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes listNoteOccurrences with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNoteOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNoteOccurrencesRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.innerApiCalls.listNoteOccurrences = stubSimpleCall(undefined, expectedError); - await assert.rejects(client.listNoteOccurrences(request), expectedError); - const actualRequest = (client.innerApiCalls.listNoteOccurrences as SinonStub) - .getCall(0).args[0]; - assert.deepStrictEqual(actualRequest, request); - const actualHeaderRequestParams = (client.innerApiCalls.listNoteOccurrences as SinonStub) - .getCall(0).args[1].otherArgs.headers['x-goog-request-params']; - assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); - }); - - it('invokes listNoteOccurrencesStream without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNoteOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNoteOccurrencesRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - ]; - client.descriptors.page.listNoteOccurrences.createStream = stubPageStreamingCall(expectedResponse); - const stream = client.listNoteOccurrencesStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.grafeas.v1.Occurrence[] = []; - stream.on('data', (response: protos.grafeas.v1.Occurrence) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - const responses = await promise; - assert.deepStrictEqual(responses, expectedResponse); - assert((client.descriptors.page.listNoteOccurrences.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listNoteOccurrences, request)); - assert( - (client.descriptors.page.listNoteOccurrences.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listNoteOccurrences with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNoteOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNoteOccurrencesRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.innerApiCalls.listNoteOccurrences = stubSimpleCall( + undefined, + expectedError, + ); + await assert.rejects(client.listNoteOccurrences(request), expectedError); + const actualRequest = ( + client.innerApiCalls.listNoteOccurrences as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listNoteOccurrences as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); - it('invokes listNoteOccurrencesStream with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNoteOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNoteOccurrencesRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listNoteOccurrences.createStream = stubPageStreamingCall(undefined, expectedError); - const stream = client.listNoteOccurrencesStream(request); - const promise = new Promise((resolve, reject) => { - const responses: protos.grafeas.v1.Occurrence[] = []; - stream.on('data', (response: protos.grafeas.v1.Occurrence) => { - responses.push(response); - }); - stream.on('end', () => { - resolve(responses); - }); - stream.on('error', (err: Error) => { - reject(err); - }); - }); - await assert.rejects(promise, expectedError); - assert((client.descriptors.page.listNoteOccurrences.createStream as SinonStub) - .getCall(0).calledWith(client.innerApiCalls.listNoteOccurrences, request)); - assert( - (client.descriptors.page.listNoteOccurrences.createStream as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listNoteOccurrencesStream without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNoteOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNoteOccurrencesRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + ]; + client.descriptors.page.listNoteOccurrences.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listNoteOccurrencesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.grafeas.v1.Occurrence[] = []; + stream.on('data', (response: protos.grafeas.v1.Occurrence) => { + responses.push(response); + }); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listNoteOccurrences.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listNoteOccurrences, request), + ); + assert( + (client.descriptors.page.listNoteOccurrences.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('uses async iteration with listNoteOccurrences without error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNoteOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNoteOccurrencesRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedResponse = [ - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - generateSampleMessage(new protos.grafeas.v1.Occurrence()), - ]; - client.descriptors.page.listNoteOccurrences.asyncIterate = stubAsyncIterationCall(expectedResponse); - const responses: protos.grafeas.v1.IOccurrence[] = []; - const iterable = client.listNoteOccurrencesAsync(request); - for await (const resource of iterable) { - responses.push(resource!); - } - assert.deepStrictEqual(responses, expectedResponse); - assert.deepStrictEqual( - (client.descriptors.page.listNoteOccurrences.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listNoteOccurrences.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('invokes listNoteOccurrencesStream with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNoteOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNoteOccurrencesRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listNoteOccurrences.createStream = + stubPageStreamingCall(undefined, expectedError); + const stream = client.listNoteOccurrencesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.grafeas.v1.Occurrence[] = []; + stream.on('data', (response: protos.grafeas.v1.Occurrence) => { + responses.push(response); + }); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listNoteOccurrences.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listNoteOccurrences, request), + ); + assert( + (client.descriptors.page.listNoteOccurrences.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); - it('uses async iteration with listNoteOccurrences with error', async () => { - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - const request = generateSampleMessage( - new protos.grafeas.v1.ListNoteOccurrencesRequest() - ); - const defaultValue1 = - getTypeDefaultValue('.grafeas.v1.ListNoteOccurrencesRequest', ['name']); - request.name = defaultValue1; - const expectedHeaderRequestParams = `name=${defaultValue1 ?? '' }`; - const expectedError = new Error('expected'); - client.descriptors.page.listNoteOccurrences.asyncIterate = stubAsyncIterationCall(undefined, expectedError); - const iterable = client.listNoteOccurrencesAsync(request); - await assert.rejects(async () => { - const responses: protos.grafeas.v1.IOccurrence[] = []; - for await (const resource of iterable) { - responses.push(resource!); - } - }); - assert.deepStrictEqual( - (client.descriptors.page.listNoteOccurrences.asyncIterate as SinonStub) - .getCall(0).args[1], request); - assert( - (client.descriptors.page.listNoteOccurrences.asyncIterate as SinonStub) - .getCall(0).args[2].otherArgs.headers['x-goog-request-params'].includes( - expectedHeaderRequestParams - ) - ); - }); + it('uses async iteration with listNoteOccurrences without error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNoteOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNoteOccurrencesRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedResponse = [ + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + generateSampleMessage(new protos.grafeas.v1.Occurrence()), + ]; + client.descriptors.page.listNoteOccurrences.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.grafeas.v1.IOccurrence[] = []; + const iterable = client.listNoteOccurrencesAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.descriptors.page.listNoteOccurrences.asyncIterate as SinonStub + ).getCall(0).args[1], + request, + ); + assert( + (client.descriptors.page.listNoteOccurrences.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); }); - describe('Path templates', () => { - - describe('note', async () => { - const fakePath = "/rendered/path/note"; - const expectedParameters = { - project: "projectValue", - note: "noteValue", - }; - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - client.pathTemplates.notePathTemplate.render = - sinon.stub().returns(fakePath); - client.pathTemplates.notePathTemplate.match = - sinon.stub().returns(expectedParameters); - - it('notePath', () => { - const result = client.notePath("projectValue", "noteValue"); - assert.strictEqual(result, fakePath); - assert((client.pathTemplates.notePathTemplate.render as SinonStub) - .getCall(-1).calledWith(expectedParameters)); - }); - - it('matchProjectFromNoteName', () => { - const result = client.matchProjectFromNoteName(fakePath); - assert.strictEqual(result, "projectValue"); - assert((client.pathTemplates.notePathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - - it('matchNoteFromNoteName', () => { - const result = client.matchNoteFromNoteName(fakePath); - assert.strictEqual(result, "noteValue"); - assert((client.pathTemplates.notePathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - }); + it('uses async iteration with listNoteOccurrences with error', async () => { + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + const request = generateSampleMessage( + new protos.grafeas.v1.ListNoteOccurrencesRequest(), + ); + const defaultValue1 = getTypeDefaultValue( + '.grafeas.v1.ListNoteOccurrencesRequest', + ['name'], + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1 ?? ''}`; + const expectedError = new Error('expected'); + client.descriptors.page.listNoteOccurrences.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listNoteOccurrencesAsync(request); + await assert.rejects(async () => { + const responses: protos.grafeas.v1.IOccurrence[] = []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.descriptors.page.listNoteOccurrences.asyncIterate as SinonStub + ).getCall(0).args[1], + request, + ); + assert( + (client.descriptors.page.listNoteOccurrences.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers[ + 'x-goog-request-params' + ].includes(expectedHeaderRequestParams), + ); + }); + }); + + describe('Path templates', () => { + describe('note', async () => { + const fakePath = '/rendered/path/note'; + const expectedParameters = { + project: 'projectValue', + note: 'noteValue', + }; + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + client.pathTemplates.notePathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.notePathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('notePath', () => { + const result = client.notePath('projectValue', 'noteValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.notePathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters), + ); + }); + + it('matchProjectFromNoteName', () => { + const result = client.matchProjectFromNoteName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.notePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + + it('matchNoteFromNoteName', () => { + const result = client.matchNoteFromNoteName(fakePath); + assert.strictEqual(result, 'noteValue'); + assert( + (client.pathTemplates.notePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + }); - describe('occurrence', async () => { - const fakePath = "/rendered/path/occurrence"; - const expectedParameters = { - project: "projectValue", - occurrence: "occurrenceValue", - }; - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - client.pathTemplates.occurrencePathTemplate.render = - sinon.stub().returns(fakePath); - client.pathTemplates.occurrencePathTemplate.match = - sinon.stub().returns(expectedParameters); - - it('occurrencePath', () => { - const result = client.occurrencePath("projectValue", "occurrenceValue"); - assert.strictEqual(result, fakePath); - assert((client.pathTemplates.occurrencePathTemplate.render as SinonStub) - .getCall(-1).calledWith(expectedParameters)); - }); - - it('matchProjectFromOccurrenceName', () => { - const result = client.matchProjectFromOccurrenceName(fakePath); - assert.strictEqual(result, "projectValue"); - assert((client.pathTemplates.occurrencePathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - - it('matchOccurrenceFromOccurrenceName', () => { - const result = client.matchOccurrenceFromOccurrenceName(fakePath); - assert.strictEqual(result, "occurrenceValue"); - assert((client.pathTemplates.occurrencePathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - }); + describe('occurrence', async () => { + const fakePath = '/rendered/path/occurrence'; + const expectedParameters = { + project: 'projectValue', + occurrence: 'occurrenceValue', + }; + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + client.pathTemplates.occurrencePathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.occurrencePathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('occurrencePath', () => { + const result = client.occurrencePath('projectValue', 'occurrenceValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.occurrencePathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters), + ); + }); + + it('matchProjectFromOccurrenceName', () => { + const result = client.matchProjectFromOccurrenceName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.occurrencePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + + it('matchOccurrenceFromOccurrenceName', () => { + const result = client.matchOccurrenceFromOccurrenceName(fakePath); + assert.strictEqual(result, 'occurrenceValue'); + assert( + (client.pathTemplates.occurrencePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); + }); - describe('project', async () => { - const fakePath = "/rendered/path/project"; - const expectedParameters = { - project: "projectValue", - }; - const client = new grafeasModule.v1.GrafeasClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - await client.initialize(); - client.pathTemplates.projectPathTemplate.render = - sinon.stub().returns(fakePath); - client.pathTemplates.projectPathTemplate.match = - sinon.stub().returns(expectedParameters); - - it('projectPath', () => { - const result = client.projectPath("projectValue"); - assert.strictEqual(result, fakePath); - assert((client.pathTemplates.projectPathTemplate.render as SinonStub) - .getCall(-1).calledWith(expectedParameters)); - }); - - it('matchProjectFromProjectName', () => { - const result = client.matchProjectFromProjectName(fakePath); - assert.strictEqual(result, "projectValue"); - assert((client.pathTemplates.projectPathTemplate.match as SinonStub) - .getCall(-1).calledWith(fakePath)); - }); - }); + describe('project', async () => { + const fakePath = '/rendered/path/project'; + const expectedParameters = { + project: 'projectValue', + }; + const client = new grafeasModule.v1.GrafeasClient({ + credentials: { client_email: 'bogus', private_key: 'bogus' }, + projectId: 'bogus', + }); + await client.initialize(); + client.pathTemplates.projectPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.projectPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('projectPath', () => { + const result = client.projectPath('projectValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.projectPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters), + ); + }); + + it('matchProjectFromProjectName', () => { + const result = client.matchProjectFromProjectName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.projectPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath), + ); + }); }); + }); }); diff --git a/packages/grafeas/webpack.config.js b/packages/grafeas/webpack.config.js index f4eebaf1e2c5..a51f5e182e4e 100644 --- a/packages/grafeas/webpack.config.js +++ b/packages/grafeas/webpack.config.js @@ -1,4 +1,4 @@ -// Copyright 2026 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License.