Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Automated regeneration of ServiceConsumerManagement client #10906

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -240,7 +240,7 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Api.Operations do
end

@doc """
Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `"/v1/{name=users/*}/operations"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.
Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.

## Parameters

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ defmodule GoogleApi.ServiceConsumerManagement.V1 do
API client metadata for GoogleApi.ServiceConsumerManagement.V1.
"""

@discovery_revision "20221115"
@discovery_revision "20240310"

def discovery_revision(), do: @discovery_revision
end
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.BackendRule do
* `jwtAudience` (*type:* `String.t`, *default:* `nil`) - The JWT audience is used when generating a JWT ID token for the backend. This ID token will be added in the HTTP "authorization" header, and sent to the backend.
* `minDeadline` (*type:* `float()`, *default:* `nil`) - Deprecated, do not use.
* `operationDeadline` (*type:* `float()`, *default:* `nil`) - The number of seconds to wait for the completion of a long running operation. The default is no deadline.
* `overridesByRequestProtocol` (*type:* `%{optional(String.t) => GoogleApi.ServiceConsumerManagement.V1.Model.BackendRule.t}`, *default:* `nil`) - The map between request protocol and the backend address.
* `pathTranslation` (*type:* `String.t`, *default:* `nil`) -
* `protocol` (*type:* `String.t`, *default:* `nil`) - The protocol used for sending a request to the backend. The supported values are "http/1.1" and "h2". The default value is inferred from the scheme in the address field: SCHEME PROTOCOL http:// http/1.1 https:// http/1.1 grpc:// h2 grpcs:// h2 For secure HTTP backends (https://) that support HTTP/2, set this field to "h2" for improved performance. Configuring this field to non-default values is only supported for secure HTTP backends. This field will be ignored for all other backends. See https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids for more details on the supported values.
* `selector` (*type:* `String.t`, *default:* `nil`) - Selects the methods to which this rule applies. Refer to selector for syntax details.
Expand All @@ -41,6 +42,11 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.BackendRule do
:jwtAudience => String.t() | nil,
:minDeadline => float() | nil,
:operationDeadline => float() | nil,
:overridesByRequestProtocol =>
%{
optional(String.t()) => GoogleApi.ServiceConsumerManagement.V1.Model.BackendRule.t()
}
| nil,
:pathTranslation => String.t() | nil,
:protocol => String.t() | nil,
:selector => String.t() | nil
Expand All @@ -52,6 +58,12 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.BackendRule do
field(:jwtAudience)
field(:minDeadline)
field(:operationDeadline)

field(:overridesByRequestProtocol,
as: GoogleApi.ServiceConsumerManagement.V1.Model.BackendRule,
type: :map
)

field(:pathTranslation)
field(:protocol)
field(:selector)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.ClientLibrarySettings do
* `pythonSettings` (*type:* `GoogleApi.ServiceConsumerManagement.V1.Model.PythonSettings.t`, *default:* `nil`) - Settings for Python client libraries.
* `restNumericEnums` (*type:* `boolean()`, *default:* `nil`) - When using transport=rest, the client request will encode enums as numbers rather than strings.
* `rubySettings` (*type:* `GoogleApi.ServiceConsumerManagement.V1.Model.RubySettings.t`, *default:* `nil`) - Settings for Ruby client libraries.
* `version` (*type:* `String.t`, *default:* `nil`) - Version of the API to apply these settings to.
* `version` (*type:* `String.t`, *default:* `nil`) - Version of the API to apply these settings to. This is the full protobuf package for the API, ending in the version element. Examples: "google.cloud.speech.v1" and "google.spanner.admin.database.v1".
"""

use GoogleApi.Gax.ModelBase
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,23 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.Control do
## Attributes

* `environment` (*type:* `String.t`, *default:* `nil`) - The service controller environment to use. If empty, no control plane feature (like quota and billing) will be enabled. The recommended value for most services is servicecontrol.googleapis.com
* `methodPolicies` (*type:* `list(GoogleApi.ServiceConsumerManagement.V1.Model.MethodPolicy.t)`, *default:* `nil`) - Defines policies applying to the API methods of the service.
"""

use GoogleApi.Gax.ModelBase

@type t :: %__MODULE__{
:environment => String.t() | nil
:environment => String.t() | nil,
:methodPolicies =>
list(GoogleApi.ServiceConsumerManagement.V1.Model.MethodPolicy.t()) | nil
}

field(:environment)

field(:methodPolicies,
as: GoogleApi.ServiceConsumerManagement.V1.Model.MethodPolicy,
type: :list
)
end

defimpl Poison.Decoder, for: GoogleApi.ServiceConsumerManagement.V1.Model.Control do
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,15 @@

defmodule GoogleApi.ServiceConsumerManagement.V1.Model.Documentation do
@moduledoc """
`Documentation` provides the information for describing a service. Example: documentation: summary: > The Google Calendar API gives access to most calendar features. pages: - name: Overview content: (== include google/foo/overview.md ==) - name: Tutorial content: (== include google/foo/tutorial.md ==) subpages; - name: Java content: (== include google/foo/tutorial_java.md ==) rules: - selector: google.calendar.Calendar.Get description: > ... - selector: google.calendar.Calendar.Put description: > ... Documentation is provided in markdown syntax. In addition to standard markdown features, definition lists, tables and fenced code blocks are supported. Section headers can be provided and are interpreted relative to the section nesting of the context where a documentation fragment is embedded. Documentation from the IDL is merged with documentation defined via the config at normalization time, where documentation provided by config rules overrides IDL provided. A number of constructs specific to the API platform are supported in documentation text. In order to reference a proto element, the following notation can be used: [fully.qualified.proto.name][] To override the display text used for the link, this can be used: [display text][fully.qualified.proto.name] Text can be excluded from doc using the following notation: (-- internal comment --) A few directives are available in documentation. Note that directives must appear on a single line to be properly identified. The `include` directive includes a markdown file from an external source: (== include path/to/file ==) The `resource_for` directive marks a message to be the resource of a collection in REST view. If it is not specified, tools attempt to infer the resource from the operations in a collection: (== resource_for v1.shelves.books ==) The directive `suppress_warning` does not directly affect documentation and is documented together with service config validation.
`Documentation` provides the information for describing a service. Example: documentation: summary: > The Google Calendar API gives access to most calendar features. pages: - name: Overview content: (== include google/foo/overview.md ==) - name: Tutorial content: (== include google/foo/tutorial.md ==) subpages: - name: Java content: (== include google/foo/tutorial_java.md ==) rules: - selector: google.calendar.Calendar.Get description: > ... - selector: google.calendar.Calendar.Put description: > ... Documentation is provided in markdown syntax. In addition to standard markdown features, definition lists, tables and fenced code blocks are supported. Section headers can be provided and are interpreted relative to the section nesting of the context where a documentation fragment is embedded. Documentation from the IDL is merged with documentation defined via the config at normalization time, where documentation provided by config rules overrides IDL provided. A number of constructs specific to the API platform are supported in documentation text. In order to reference a proto element, the following notation can be used: [fully.qualified.proto.name][] To override the display text used for the link, this can be used: [display text][fully.qualified.proto.name] Text can be excluded from doc using the following notation: (-- internal comment --) A few directives are available in documentation. Note that directives must appear on a single line to be properly identified. The `include` directive includes a markdown file from an external source: (== include path/to/file ==) The `resource_for` directive marks a message to be the resource of a collection in REST view. If it is not specified, tools attempt to infer the resource from the operations in a collection: (== resource_for v1.shelves.books ==) The directive `suppress_warning` does not directly affect documentation and is documented together with service config validation.

## Attributes

* `documentationRootUrl` (*type:* `String.t`, *default:* `nil`) - The URL to the root of documentation.
* `overview` (*type:* `String.t`, *default:* `nil`) - Declares a single overview page. For example: documentation: summary: ... overview: (== include overview.md ==) This is a shortcut for the following declaration (using pages style): documentation: summary: ... pages: - name: Overview content: (== include overview.md ==) Note: you cannot specify both `overview` field and `pages` field.
* `pages` (*type:* `list(GoogleApi.ServiceConsumerManagement.V1.Model.Page.t)`, *default:* `nil`) - The top level pages for the documentation set.
* `rules` (*type:* `list(GoogleApi.ServiceConsumerManagement.V1.Model.DocumentationRule.t)`, *default:* `nil`) - A list of documentation rules that apply to individual API elements. **NOTE:** All service configuration rules follow "last one wins" order.
* `sectionOverrides` (*type:* `list(GoogleApi.ServiceConsumerManagement.V1.Model.Page.t)`, *default:* `nil`) - Specifies section and content to override boilerplate content provided by go/api-docgen. Currently overrides following sections: 1. rest.service.client_libraries
* `serviceRootUrl` (*type:* `String.t`, *default:* `nil`) - Specifies the service root url if the default one (the service name from the yaml file) is not suitable. This can be seen in any fully specified service urls as well as sections that show a base that other urls are relative to.
* `summary` (*type:* `String.t`, *default:* `nil`) - A short description of what the service does. The summary must be plain text. It becomes the overview of the service displayed in Google Cloud Console. NOTE: This field is equivalent to the standard field `description`.
"""
Expand All @@ -37,6 +38,7 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.Documentation do
:pages => list(GoogleApi.ServiceConsumerManagement.V1.Model.Page.t()) | nil,
:rules =>
list(GoogleApi.ServiceConsumerManagement.V1.Model.DocumentationRule.t()) | nil,
:sectionOverrides => list(GoogleApi.ServiceConsumerManagement.V1.Model.Page.t()) | nil,
:serviceRootUrl => String.t() | nil,
:summary => String.t() | nil
}
Expand All @@ -45,6 +47,7 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.Documentation do
field(:overview)
field(:pages, as: GoogleApi.ServiceConsumerManagement.V1.Model.Page, type: :list)
field(:rules, as: GoogleApi.ServiceConsumerManagement.V1.Model.DocumentationRule, type: :list)
field(:sectionOverrides, as: GoogleApi.ServiceConsumerManagement.V1.Model.Page, type: :list)
field(:serviceRootUrl)
field(:summary)
end
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.DocumentationRule do

* `deprecationDescription` (*type:* `String.t`, *default:* `nil`) - Deprecation description of the selected element(s). It can be provided if an element is marked as `deprecated`.
* `description` (*type:* `String.t`, *default:* `nil`) - Description of the selected proto element (e.g. a message, a method, a 'service' definition, or a field). Defaults to leading & trailing comments taken from the proto source definition of the proto element.
* `disableReplacementWords` (*type:* `String.t`, *default:* `nil`) - String of comma or space separated case-sensitive words for which method/field name replacement will be disabled by go/api-docgen.
* `selector` (*type:* `String.t`, *default:* `nil`) - The selector is a comma-separated list of patterns for any element such as a method, a field, an enum value. Each pattern is a qualified name of the element which may end in "*", indicating a wildcard. Wildcards are only allowed at the end and for a whole component of the qualified name, i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". A wildcard will match one or more components. To specify a default for all applicable elements, the whole pattern "*" is used.
"""

Expand All @@ -31,11 +32,13 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.DocumentationRule do
@type t :: %__MODULE__{
:deprecationDescription => String.t() | nil,
:description => String.t() | nil,
:disableReplacementWords => String.t() | nil,
:selector => String.t() | nil
}

field(:deprecationDescription)
field(:description)
field(:disableReplacementWords)
field(:selector)
end

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,31 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.DotnetSettings do
## Attributes

* `common` (*type:* `GoogleApi.ServiceConsumerManagement.V1.Model.CommonLanguageSettings.t`, *default:* `nil`) - Some settings.
* `forcedNamespaceAliases` (*type:* `list(String.t)`, *default:* `nil`) - Namespaces which must be aliased in snippets due to a known (but non-generator-predictable) naming collision
* `handwrittenSignatures` (*type:* `list(String.t)`, *default:* `nil`) - Method signatures (in the form "service.method(signature)") which are provided separately, so shouldn't be generated. Snippets *calling* these methods are still generated, however.
* `ignoredResources` (*type:* `list(String.t)`, *default:* `nil`) - List of full resource types to ignore during generation. This is typically used for API-specific Location resources, which should be handled by the generator as if they were actually the common Location resources. Example entry: "documentai.googleapis.com/Location"
* `renamedResources` (*type:* `map()`, *default:* `nil`) - Map from full resource types to the effective short name for the resource. This is used when otherwise resource named from different services would cause naming collisions. Example entry: "datalabeling.googleapis.com/Dataset": "DataLabelingDataset"
* `renamedServices` (*type:* `map()`, *default:* `nil`) - Map from original service names to renamed versions. This is used when the default generated types would cause a naming conflict. (Neither name is fully-qualified.) Example: Subscriber to SubscriberServiceApi.
"""

use GoogleApi.Gax.ModelBase

@type t :: %__MODULE__{
:common => GoogleApi.ServiceConsumerManagement.V1.Model.CommonLanguageSettings.t() | nil
:common =>
GoogleApi.ServiceConsumerManagement.V1.Model.CommonLanguageSettings.t() | nil,
:forcedNamespaceAliases => list(String.t()) | nil,
:handwrittenSignatures => list(String.t()) | nil,
:ignoredResources => list(String.t()) | nil,
:renamedResources => map() | nil,
:renamedServices => map() | nil
}

field(:common, as: GoogleApi.ServiceConsumerManagement.V1.Model.CommonLanguageSettings)
field(:forcedNamespaceAliases, type: :list)
field(:handwrittenSignatures, type: :list)
field(:ignoredResources, type: :list)
field(:renamedResources, type: :map)
field(:renamedServices, type: :map)
end

defimpl Poison.Decoder, for: GoogleApi.ServiceConsumerManagement.V1.Model.DotnetSettings do
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.Enum do

## Attributes

* `edition` (*type:* `String.t`, *default:* `nil`) - The source edition string, only valid when syntax is SYNTAX_EDITIONS.
* `enumvalue` (*type:* `list(GoogleApi.ServiceConsumerManagement.V1.Model.EnumValue.t)`, *default:* `nil`) - Enum value definitions.
* `name` (*type:* `String.t`, *default:* `nil`) - Enum type name.
* `options` (*type:* `list(GoogleApi.ServiceConsumerManagement.V1.Model.Option.t)`, *default:* `nil`) - Protocol buffer options.
Expand All @@ -31,13 +32,15 @@ defmodule GoogleApi.ServiceConsumerManagement.V1.Model.Enum do
use GoogleApi.Gax.ModelBase

@type t :: %__MODULE__{
:edition => String.t() | nil,
:enumvalue => list(GoogleApi.ServiceConsumerManagement.V1.Model.EnumValue.t()) | nil,
:name => String.t() | nil,
:options => list(GoogleApi.ServiceConsumerManagement.V1.Model.Option.t()) | nil,
:sourceContext => GoogleApi.ServiceConsumerManagement.V1.Model.SourceContext.t() | nil,
:syntax => String.t() | nil
}

field(:edition)
field(:enumvalue, as: GoogleApi.ServiceConsumerManagement.V1.Model.EnumValue, type: :list)
field(:name)
field(:options, as: GoogleApi.ServiceConsumerManagement.V1.Model.Option, type: :list)
Expand Down
Loading
Loading