Show / Hide Table of Contents

Class BackendRule

A backend rule provides configuration for an individual API element.

Inheritance
System.Object
BackendRule
Implements
IMessage<BackendRule>
IMessage
System.IEquatable<BackendRule>
IDeepCloneable<BackendRule>
Inherited Members
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Google.Api
Assembly: Google.Api.CommonProtos.dll
Syntax
public sealed class BackendRule : IMessage<BackendRule>, IMessage, IEquatable<BackendRule>, IDeepCloneable<BackendRule>

Constructors

BackendRule()

Declaration
public BackendRule()

BackendRule(BackendRule)

Declaration
public BackendRule(BackendRule other)
Parameters
Type Name Description
BackendRule other

Fields

AddressFieldNumber

Field number for the "address" field.

Declaration
public const int AddressFieldNumber = 2
Field Value
Type Description
System.Int32

DeadlineFieldNumber

Field number for the "deadline" field.

Declaration
public const int DeadlineFieldNumber = 3
Field Value
Type Description
System.Int32

DisableAuthFieldNumber

Field number for the "disable_auth" field.

Declaration
public const int DisableAuthFieldNumber = 8
Field Value
Type Description
System.Int32

JwtAudienceFieldNumber

Field number for the "jwt_audience" field.

Declaration
public const int JwtAudienceFieldNumber = 7
Field Value
Type Description
System.Int32

MinDeadlineFieldNumber

Field number for the "min_deadline" field.

Declaration
public const int MinDeadlineFieldNumber = 4
Field Value
Type Description
System.Int32

OperationDeadlineFieldNumber

Field number for the "operation_deadline" field.

Declaration
public const int OperationDeadlineFieldNumber = 5
Field Value
Type Description
System.Int32

PathTranslationFieldNumber

Field number for the "path_translation" field.

Declaration
public const int PathTranslationFieldNumber = 6
Field Value
Type Description
System.Int32

ProtocolFieldNumber

Field number for the "protocol" field.

Declaration
public const int ProtocolFieldNumber = 9
Field Value
Type Description
System.Int32

SelectorFieldNumber

Field number for the "selector" field.

Declaration
public const int SelectorFieldNumber = 1
Field Value
Type Description
System.Int32

Properties

Address

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][google.api.BackendRule.protocol] to specify the protocol version.

Declaration
public string Address { get; set; }
Property Value
Type Description
System.String

AuthenticationCase

Declaration
public BackendRule.AuthenticationOneofCase AuthenticationCase { get; }
Property Value
Type Description
BackendRule.AuthenticationOneofCase

Deadline

The number of seconds to wait for a response from a request. The default varies based on the request protocol and deployment environment.

Declaration
public double Deadline { get; set; }
Property Value
Type Description
System.Double

Descriptor

Declaration
public static MessageDescriptor Descriptor { get; }
Property Value
Type Description
MessageDescriptor

DisableAuth

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.

Declaration
public bool DisableAuth { get; set; }
Property Value
Type Description
System.Boolean

JwtAudience

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.

Declaration
public string JwtAudience { get; set; }
Property Value
Type Description
System.String

MinDeadline

Minimum deadline in seconds needed for this method. Calls having deadline value lower than this will be rejected.

Declaration
public double MinDeadline { get; set; }
Property Value
Type Description
System.Double

OperationDeadline

The number of seconds to wait for the completion of a long running operation. The default is no deadline.

Declaration
public double OperationDeadline { get; set; }
Property Value
Type Description
System.Double

Parser

Declaration
public static MessageParser<BackendRule> Parser { get; }
Property Value
Type Description
MessageParser<BackendRule>

PathTranslation

Declaration
public BackendRule.Types.PathTranslation PathTranslation { get; set; }
Property Value
Type Description
BackendRule.Types.PathTranslation

Protocol

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][google.api.BackendRule.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.

Declaration
public string Protocol { get; set; }
Property Value
Type Description
System.String

Selector

Selects the methods to which this rule applies.

Refer to [selector][google.api.DocumentationRule.selector] for syntax details.

Declaration
public string Selector { get; set; }
Property Value
Type Description
System.String

Methods

CalculateSize()

Declaration
public int CalculateSize()
Returns
Type Description
System.Int32
Implements
IMessage.CalculateSize()

ClearAuthentication()

Declaration
public void ClearAuthentication()

Clone()

Declaration
public BackendRule Clone()
Returns
Type Description
BackendRule
Implements
IDeepCloneable<T>.Clone()

Equals(BackendRule)

Declaration
public bool Equals(BackendRule other)
Parameters
Type Name Description
BackendRule other
Returns
Type Description
System.Boolean
Implements
System.IEquatable<T>.Equals(T)

Equals(Object)

Declaration
public override bool Equals(object other)
Parameters
Type Name Description
System.Object other
Returns
Type Description
System.Boolean
Overrides
System.Object.Equals(System.Object)

GetHashCode()

Declaration
public override int GetHashCode()
Returns
Type Description
System.Int32
Overrides
System.Object.GetHashCode()

MergeFrom(BackendRule)

Declaration
public void MergeFrom(BackendRule other)
Parameters
Type Name Description
BackendRule other
Implements
IMessage<T>.MergeFrom(T)

MergeFrom(CodedInputStream)

Declaration
public void MergeFrom(CodedInputStream input)
Parameters
Type Name Description
CodedInputStream input
Implements
IMessage.MergeFrom(CodedInputStream)

ToString()

Declaration
public override string ToString()
Returns
Type Description
System.String
Overrides
System.Object.ToString()

WriteTo(CodedOutputStream)

Declaration
public void WriteTo(CodedOutputStream output)
Parameters
Type Name Description
CodedOutputStream output
Implements
IMessage.WriteTo(CodedOutputStream)

Explicit Interface Implementations

IMessage.Descriptor

Declaration
MessageDescriptor IMessage.Descriptor { get; }
Returns
Type Description
MessageDescriptor
Implements
IMessage.Descriptor
Back to top