Class BackendRule.Builder (2.40.0)

public static final class BackendRule.Builder extends GeneratedMessageV3.Builder<BackendRule.Builder> implements BackendRuleOrBuilder

A backend rule provides configuration for an individual API element.

Protobuf type google.api.BackendRule

Static Methods

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
Type Description
Descriptor

Methods

addRepeatedField(Descriptors.FieldDescriptor field, Object value)

public BackendRule.Builder addRepeatedField(Descriptors.FieldDescriptor field, Object value)
Parameters
Name Description
field FieldDescriptor
value Object
Returns
Type Description
BackendRule.Builder
Overrides

build()

public BackendRule build()
Returns
Type Description
BackendRule

buildPartial()

public BackendRule buildPartial()
Returns
Type Description
BackendRule

clear()

public BackendRule.Builder clear()
Returns
Type Description
BackendRule.Builder
Overrides

clearAddress()

public BackendRule.Builder clearAddress()

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.

string address = 2;

Returns
Type Description
BackendRule.Builder

This builder for chaining.

clearAuthentication()

public BackendRule.Builder clearAuthentication()
Returns
Type Description
BackendRule.Builder

clearDeadline()

public BackendRule.Builder clearDeadline()

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

double deadline = 3;

Returns
Type Description
BackendRule.Builder

This builder for chaining.

clearDisableAuth()

public BackendRule.Builder clearDisableAuth()

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.

bool disable_auth = 8;

Returns
Type Description
BackendRule.Builder

This builder for chaining.

clearField(Descriptors.FieldDescriptor field)

public BackendRule.Builder clearField(Descriptors.FieldDescriptor field)
Parameter
Name Description
field FieldDescriptor
Returns
Type Description
BackendRule.Builder
Overrides

clearJwtAudience()

public BackendRule.Builder clearJwtAudience()

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.

string jwt_audience = 7;

Returns
Type Description
BackendRule.Builder

This builder for chaining.

clearMinDeadline() (deprecated)

public BackendRule.Builder clearMinDeadline()

Deprecated. google.api.BackendRule.min_deadline is deprecated. See google/api/backend.proto;l=124

Deprecated, do not use.

double min_deadline = 4 [deprecated = true];

Returns
Type Description
BackendRule.Builder

This builder for chaining.

clearOneof(Descriptors.OneofDescriptor oneof)

public BackendRule.Builder clearOneof(Descriptors.OneofDescriptor oneof)
Parameter
Name Description
oneof OneofDescriptor
Returns
Type Description
BackendRule.Builder
Overrides

clearOperationDeadline()

public BackendRule.Builder clearOperationDeadline()

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

double operation_deadline = 5;

Returns
Type Description
BackendRule.Builder

This builder for chaining.

clearOverridesByRequestProtocol()

public BackendRule.Builder clearOverridesByRequestProtocol()
Returns
Type Description
BackendRule.Builder

clearPathTranslation()

public BackendRule.Builder clearPathTranslation()

.google.api.BackendRule.PathTranslation path_translation = 6;

Returns
Type Description
BackendRule.Builder

This builder for chaining.

clearProtocol()

public BackendRule.Builder clearProtocol()

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.

string protocol = 9;

Returns
Type Description
BackendRule.Builder

This builder for chaining.

clearSelector()

public BackendRule.Builder clearSelector()

Selects the methods to which this rule applies.

Refer to selector for syntax details.

string selector = 1;

Returns
Type Description
BackendRule.Builder

This builder for chaining.

clone()

public BackendRule.Builder clone()
Returns
Type Description
BackendRule.Builder
Overrides

containsOverridesByRequestProtocol(String key)

public boolean containsOverridesByRequestProtocol(String key)

The map between request protocol and the backend address.

map<string, .google.api.BackendRule> overrides_by_request_protocol = 10;

Parameter
Name Description
key String
Returns
Type Description
boolean

getAddress()

public String getAddress()

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.

string address = 2;

Returns
Type Description
String

The address.

getAddressBytes()

public ByteString getAddressBytes()

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.

string address = 2;

Returns
Type Description
ByteString

The bytes for address.

getAuthenticationCase()

public BackendRule.AuthenticationCase getAuthenticationCase()
Returns
Type Description
BackendRule.AuthenticationCase

getDeadline()

public double getDeadline()

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

double deadline = 3;

Returns
Type Description
double

The deadline.

getDefaultInstanceForType()

public BackendRule getDefaultInstanceForType()
Returns
Type Description
BackendRule

getDescriptorForType()

public Descriptors.Descriptor getDescriptorForType()
Returns
Type Description
Descriptor
Overrides

getDisableAuth()

public boolean getDisableAuth()

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.

bool disable_auth = 8;

Returns
Type Description
boolean

The disableAuth.

getJwtAudience()

public String getJwtAudience()

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.

string jwt_audience = 7;

Returns
Type Description
String

The jwtAudience.

getJwtAudienceBytes()

public ByteString getJwtAudienceBytes()

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.

string jwt_audience = 7;

Returns
Type Description
ByteString

The bytes for jwtAudience.

getMinDeadline() (deprecated)

public double getMinDeadline()

Deprecated. google.api.BackendRule.min_deadline is deprecated. See google/api/backend.proto;l=124

Deprecated, do not use.

double min_deadline = 4 [deprecated = true];

Returns
Type Description
double

The minDeadline.

getMutableOverridesByRequestProtocol() (deprecated)

public Map<String,BackendRule> getMutableOverridesByRequestProtocol()

Use alternate mutation accessors instead.

Returns
Type Description
Map<String,BackendRule>

getOperationDeadline()

public double getOperationDeadline()

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

double operation_deadline = 5;

Returns
Type Description
double

The operationDeadline.

getOverridesByRequestProtocol() (deprecated)

public Map<String,BackendRule> getOverridesByRequestProtocol()
Returns
Type Description
Map<String,BackendRule>

getOverridesByRequestProtocolCount()

public int getOverridesByRequestProtocolCount()

The map between request protocol and the backend address.

map<string, .google.api.BackendRule> overrides_by_request_protocol = 10;

Returns
Type Description
int

getOverridesByRequestProtocolMap()

public Map<String,BackendRule> getOverridesByRequestProtocolMap()

The map between request protocol and the backend address.

map<string, .google.api.BackendRule> overrides_by_request_protocol = 10;

Returns
Type Description
Map<String,BackendRule>

getOverridesByRequestProtocolOrDefault(String key, BackendRule defaultValue)

public BackendRule getOverridesByRequestProtocolOrDefault(String key, BackendRule defaultValue)

The map between request protocol and the backend address.

map<string, .google.api.BackendRule> overrides_by_request_protocol = 10;

Parameters
Name Description
key String
defaultValue BackendRule
Returns
Type Description
BackendRule

getOverridesByRequestProtocolOrThrow(String key)

public BackendRule getOverridesByRequestProtocolOrThrow(String key)

The map between request protocol and the backend address.

map<string, .google.api.BackendRule> overrides_by_request_protocol = 10;

Parameter
Name Description
key String
Returns
Type Description
BackendRule

getPathTranslation()

public BackendRule.PathTranslation getPathTranslation()

.google.api.BackendRule.PathTranslation path_translation = 6;

Returns
Type Description
BackendRule.PathTranslation

The pathTranslation.

getPathTranslationValue()

public int getPathTranslationValue()

.google.api.BackendRule.PathTranslation path_translation = 6;

Returns
Type Description
int

The enum numeric value on the wire for pathTranslation.

getProtocol()

public String getProtocol()

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.

string protocol = 9;

Returns
Type Description
String

The protocol.

getProtocolBytes()

public ByteString getProtocolBytes()

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.

string protocol = 9;

Returns
Type Description
ByteString

The bytes for protocol.

getSelector()

public String getSelector()

Selects the methods to which this rule applies.

Refer to selector for syntax details.

string selector = 1;

Returns
Type Description
String

The selector.

getSelectorBytes()

public ByteString getSelectorBytes()

Selects the methods to which this rule applies.

Refer to selector for syntax details.

string selector = 1;

Returns
Type Description
ByteString

The bytes for selector.

hasDisableAuth()

public boolean hasDisableAuth()

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.

bool disable_auth = 8;

Returns
Type Description
boolean

Whether the disableAuth field is set.

hasJwtAudience()

public boolean hasJwtAudience()

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.

string jwt_audience = 7;

Returns
Type Description
boolean

Whether the jwtAudience field is set.

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Type Description
FieldAccessorTable
Overrides

internalGetMapFieldReflection(int number)

protected MapFieldReflectionAccessor internalGetMapFieldReflection(int number)
Parameter
Name Description
number int
Returns
Type Description
com.google.protobuf.MapFieldReflectionAccessor
Overrides
com.google.protobuf.GeneratedMessageV3.Builder.internalGetMapFieldReflection(int)

internalGetMutableMapFieldReflection(int number)

protected MapFieldReflectionAccessor internalGetMutableMapFieldReflection(int number)
Parameter
Name Description
number int
Returns
Type Description
com.google.protobuf.MapFieldReflectionAccessor
Overrides
com.google.protobuf.GeneratedMessageV3.Builder.internalGetMutableMapFieldReflection(int)

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

mergeFrom(BackendRule other)

public BackendRule.Builder mergeFrom(BackendRule other)
Parameter
Name Description
other BackendRule
Returns
Type Description
BackendRule.Builder

mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public BackendRule.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input CodedInputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
BackendRule.Builder
Overrides
Exceptions
Type Description
IOException

mergeFrom(Message other)

public BackendRule.Builder mergeFrom(Message other)
Parameter
Name Description
other Message
Returns
Type Description
BackendRule.Builder
Overrides

mergeUnknownFields(UnknownFieldSet unknownFields)

public final BackendRule.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
Parameter
Name Description
unknownFields UnknownFieldSet
Returns
Type Description
BackendRule.Builder
Overrides

putAllOverridesByRequestProtocol(Map<String,BackendRule> values)

public BackendRule.Builder putAllOverridesByRequestProtocol(Map<String,BackendRule> values)

The map between request protocol and the backend address.

map<string, .google.api.BackendRule> overrides_by_request_protocol = 10;

Parameter
Name Description
values Map<String,BackendRule>
Returns
Type Description
BackendRule.Builder

putOverridesByRequestProtocol(String key, BackendRule value)

public BackendRule.Builder putOverridesByRequestProtocol(String key, BackendRule value)

The map between request protocol and the backend address.

map<string, .google.api.BackendRule> overrides_by_request_protocol = 10;

Parameters
Name Description
key String
value BackendRule
Returns
Type Description
BackendRule.Builder

putOverridesByRequestProtocolBuilderIfAbsent(String key)

public BackendRule.Builder putOverridesByRequestProtocolBuilderIfAbsent(String key)

The map between request protocol and the backend address.

map<string, .google.api.BackendRule> overrides_by_request_protocol = 10;

Parameter
Name Description
key String
Returns
Type Description
BackendRule.Builder

removeOverridesByRequestProtocol(String key)

public BackendRule.Builder removeOverridesByRequestProtocol(String key)

The map between request protocol and the backend address.

map<string, .google.api.BackendRule> overrides_by_request_protocol = 10;

Parameter
Name Description
key String
Returns
Type Description
BackendRule.Builder

setAddress(String value)

public BackendRule.Builder setAddress(String value)

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.

string address = 2;

Parameter
Name Description
value String

The address to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setAddressBytes(ByteString value)

public BackendRule.Builder setAddressBytes(ByteString value)

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.

string address = 2;

Parameter
Name Description
value ByteString

The bytes for address to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setDeadline(double value)

public BackendRule.Builder setDeadline(double value)

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

double deadline = 3;

Parameter
Name Description
value double

The deadline to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setDisableAuth(boolean value)

public BackendRule.Builder setDisableAuth(boolean value)

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.

bool disable_auth = 8;

Parameter
Name Description
value boolean

The disableAuth to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setField(Descriptors.FieldDescriptor field, Object value)

public BackendRule.Builder setField(Descriptors.FieldDescriptor field, Object value)
Parameters
Name Description
field FieldDescriptor
value Object
Returns
Type Description
BackendRule.Builder
Overrides

setJwtAudience(String value)

public BackendRule.Builder setJwtAudience(String value)

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.

string jwt_audience = 7;

Parameter
Name Description
value String

The jwtAudience to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setJwtAudienceBytes(ByteString value)

public BackendRule.Builder setJwtAudienceBytes(ByteString value)

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.

string jwt_audience = 7;

Parameter
Name Description
value ByteString

The bytes for jwtAudience to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setMinDeadline(double value) (deprecated)

public BackendRule.Builder setMinDeadline(double value)

Deprecated. google.api.BackendRule.min_deadline is deprecated. See google/api/backend.proto;l=124

Deprecated, do not use.

double min_deadline = 4 [deprecated = true];

Parameter
Name Description
value double

The minDeadline to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setOperationDeadline(double value)

public BackendRule.Builder setOperationDeadline(double value)

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

double operation_deadline = 5;

Parameter
Name Description
value double

The operationDeadline to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setPathTranslation(BackendRule.PathTranslation value)

public BackendRule.Builder setPathTranslation(BackendRule.PathTranslation value)

.google.api.BackendRule.PathTranslation path_translation = 6;

Parameter
Name Description
value BackendRule.PathTranslation

The pathTranslation to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setPathTranslationValue(int value)

public BackendRule.Builder setPathTranslationValue(int value)

.google.api.BackendRule.PathTranslation path_translation = 6;

Parameter
Name Description
value int

The enum numeric value on the wire for pathTranslation to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setProtocol(String value)

public BackendRule.Builder setProtocol(String value)

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.

string protocol = 9;

Parameter
Name Description
value String

The protocol to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setProtocolBytes(ByteString value)

public BackendRule.Builder setProtocolBytes(ByteString value)

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.

string protocol = 9;

Parameter
Name Description
value ByteString

The bytes for protocol to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)

public BackendRule.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
Parameters
Name Description
field FieldDescriptor
index int
value Object
Returns
Type Description
BackendRule.Builder
Overrides

setSelector(String value)

public BackendRule.Builder setSelector(String value)

Selects the methods to which this rule applies.

Refer to selector for syntax details.

string selector = 1;

Parameter
Name Description
value String

The selector to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setSelectorBytes(ByteString value)

public BackendRule.Builder setSelectorBytes(ByteString value)

Selects the methods to which this rule applies.

Refer to selector for syntax details.

string selector = 1;

Parameter
Name Description
value ByteString

The bytes for selector to set.

Returns
Type Description
BackendRule.Builder

This builder for chaining.

setUnknownFields(UnknownFieldSet unknownFields)

public final BackendRule.Builder setUnknownFields(UnknownFieldSet unknownFields)
Parameter
Name Description
unknownFields UnknownFieldSet
Returns
Type Description
BackendRule.Builder
Overrides