Class: Google::Apis::ServiceconsumermanagementV1beta1::BackendRule
- Inherits:
-
Object
- Object
- Google::Apis::ServiceconsumermanagementV1beta1::BackendRule
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb,
lib/google/apis/serviceconsumermanagement_v1beta1/representations.rb,
lib/google/apis/serviceconsumermanagement_v1beta1/representations.rb
Overview
A backend rule provides configuration for an individual API element.
Instance Attribute Summary collapse
-
#address ⇒ String
The address of the API backend.
-
#deadline ⇒ Float
The number of seconds to wait for a response from a request.
-
#disable_auth ⇒ Boolean
(also: #disable_auth?)
When disable_auth is true, a JWT ID token won't be generated and the original " Authorization" HTTP header will be preserved.
-
#jwt_audience ⇒ String
The JWT audience is used when generating a JWT ID token for the backend.
-
#load_balancing_policy ⇒ String
The load balancing policy used for connection to the application backend.
-
#min_deadline ⇒ Float
Deprecated, do not use.
-
#operation_deadline ⇒ Float
The number of seconds to wait for the completion of a long running operation.
-
#overrides_by_request_protocol ⇒ Hash<String,Google::Apis::ServiceconsumermanagementV1beta1::BackendRule>
The map between request protocol and the backend address.
-
#path_translation ⇒ String
no-lint Corresponds to the JSON property
pathTranslation. -
#protocol ⇒ String
The protocol used for sending a request to the backend.
-
#selector ⇒ String
Selects the methods to which this rule applies.
Instance Method Summary collapse
-
#initialize(**args) ⇒ BackendRule
constructor
A new instance of BackendRule.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ BackendRule
Returns a new instance of BackendRule.
475 476 477 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 475 def initialize(**args) update!(**args) end |
Instance Attribute Details
#address ⇒ String
The address of the API backend. The scheme is used to determine the backend
protocol and security. The following schemes are accepted: SCHEME PROTOCOL
SECURITY http:// HTTP None https:// HTTP TLS grpc:// gRPC None grpcs:// gRPC
TLS It is recommended to explicitly include a scheme. Leaving out the scheme
may cause constrasting behaviors across platforms. If the port is unspecified,
the default is: - 80 for schemes without TLS - 443 for schemes with TLS For
HTTP backends, use protocol to specify the protocol version.
Corresponds to the JSON property address
403 404 405 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 403 def address @address end |
#deadline ⇒ Float
The number of seconds to wait for a response from a request. The default
varies based on the request protocol and deployment environment.
Corresponds to the JSON property deadline
409 410 411 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 409 def deadline @deadline end |
#disable_auth ⇒ Boolean Also known as: disable_auth?
When disable_auth is true, a JWT ID token won't be generated and the original "
Authorization" HTTP header will be preserved. If the header is used to carry
the original token and is expected by the backend, this field must be set to
true to preserve the header.
Corresponds to the JSON property disableAuth
417 418 419 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 417 def disable_auth @disable_auth end |
#jwt_audience ⇒ String
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.
Corresponds to the JSON property jwtAudience
425 426 427 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 425 def jwt_audience @jwt_audience end |
#load_balancing_policy ⇒ String
The load balancing policy used for connection to the application backend.
Defined as an arbitrary string to accomondate custom load balancing policies
supported by the underlying channel, but suggest most users use one of the
standard policies, such as the default, "RoundRobin".
Corresponds to the JSON property loadBalancingPolicy
433 434 435 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 433 def load_balancing_policy @load_balancing_policy end |
#min_deadline ⇒ Float
Deprecated, do not use.
Corresponds to the JSON property minDeadline
438 439 440 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 438 def min_deadline @min_deadline end |
#operation_deadline ⇒ Float
The number of seconds to wait for the completion of a long running operation.
The default is no deadline.
Corresponds to the JSON property operationDeadline
444 445 446 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 444 def operation_deadline @operation_deadline end |
#overrides_by_request_protocol ⇒ Hash<String,Google::Apis::ServiceconsumermanagementV1beta1::BackendRule>
The map between request protocol and the backend address.
Corresponds to the JSON property overridesByRequestProtocol
449 450 451 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 449 def overrides_by_request_protocol @overrides_by_request_protocol end |
#path_translation ⇒ String
no-lint
Corresponds to the JSON property pathTranslation
454 455 456 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 454 def path_translation @path_translation end |
#protocol ⇒ String
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.
Corresponds to the JSON property protocol
467 468 469 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 467 def protocol @protocol end |
#selector ⇒ String
Selects the methods to which this rule applies. Refer to selector for syntax
details.
Corresponds to the JSON property selector
473 474 475 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 473 def selector @selector end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
480 481 482 483 484 485 486 487 488 489 490 491 492 |
# File 'lib/google/apis/serviceconsumermanagement_v1beta1/classes.rb', line 480 def update!(**args) @address = args[:address] if args.key?(:address) @deadline = args[:deadline] if args.key?(:deadline) @disable_auth = args[:disable_auth] if args.key?(:disable_auth) @jwt_audience = args[:jwt_audience] if args.key?(:jwt_audience) @load_balancing_policy = args[:load_balancing_policy] if args.key?(:load_balancing_policy) @min_deadline = args[:min_deadline] if args.key?(:min_deadline) @operation_deadline = args[:operation_deadline] if args.key?(:operation_deadline) @overrides_by_request_protocol = args[:overrides_by_request_protocol] if args.key?(:overrides_by_request_protocol) @path_translation = args[:path_translation] if args.key?(:path_translation) @protocol = args[:protocol] if args.key?(:protocol) @selector = args[:selector] if args.key?(:selector) end |