Class BackendRule.Builder (2.36.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
TypeDescription
Descriptor

Methods

addRepeatedField(Descriptors.FieldDescriptor field, Object value)

public BackendRule.Builder addRepeatedField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
BackendRule.Builder
Overrides

build()

public BackendRule build()
Returns
TypeDescription
BackendRule

buildPartial()

public BackendRule buildPartial()
Returns
TypeDescription
BackendRule

clear()

public BackendRule.Builder clear()
Returns
TypeDescription
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
TypeDescription
BackendRule.Builder

This builder for chaining.

clearAuthentication()

public BackendRule.Builder clearAuthentication()
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
BackendRule.Builder

This builder for chaining.

clearField(Descriptors.FieldDescriptor field)

public BackendRule.Builder clearField(Descriptors.FieldDescriptor field)
Parameter
NameDescription
fieldFieldDescriptor
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
BackendRule.Builder

This builder for chaining.

clearOneof(Descriptors.OneofDescriptor oneof)

public BackendRule.Builder clearOneof(Descriptors.OneofDescriptor oneof)
Parameter
NameDescription
oneofOneofDescriptor
Returns
TypeDescription
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
TypeDescription
BackendRule.Builder

This builder for chaining.

clearOverridesByRequestProtocol()

public BackendRule.Builder clearOverridesByRequestProtocol()
Returns
TypeDescription
BackendRule.Builder

clearPathTranslation()

public BackendRule.Builder clearPathTranslation()

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

Returns
TypeDescription
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
TypeDescription
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
TypeDescription
BackendRule.Builder

This builder for chaining.

clone()

public BackendRule.Builder clone()
Returns
TypeDescription
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
NameDescription
keyString
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
ByteString

The bytes for address.

getAuthenticationCase()

public BackendRule.AuthenticationCase getAuthenticationCase()
Returns
TypeDescription
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
TypeDescription
double

The deadline.

getDefaultInstanceForType()

public BackendRule getDefaultInstanceForType()
Returns
TypeDescription
BackendRule

getDescriptorForType()

public Descriptors.Descriptor getDescriptorForType()
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
double

The minDeadline.

getMutableOverridesByRequestProtocol() (deprecated)

public Map<String,BackendRule> getMutableOverridesByRequestProtocol()

Use alternate mutation accessors instead.

Returns
TypeDescription
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
TypeDescription
double

The operationDeadline.

getOverridesByRequestProtocol() (deprecated)

public Map<String,BackendRule> getOverridesByRequestProtocol()
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
NameDescription
keyString
defaultValueBackendRule
Returns
TypeDescription
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
NameDescription
keyString
Returns
TypeDescription
BackendRule

getPathTranslation()

public BackendRule.PathTranslation getPathTranslation()

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

Returns
TypeDescription
BackendRule.PathTranslation

The pathTranslation.

getPathTranslationValue()

public int getPathTranslationValue()

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

Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
boolean

Whether the jwtAudience field is set.

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
TypeDescription
FieldAccessorTable
Overrides

internalGetMapFieldReflection(int number)

protected MapFieldReflectionAccessor internalGetMapFieldReflection(int number)
Parameter
NameDescription
numberint
Returns
TypeDescription
com.google.protobuf.MapFieldReflectionAccessor
Overrides
com.google.protobuf.GeneratedMessageV3.Builder.internalGetMapFieldReflection(int)

internalGetMutableMapFieldReflection(int number)

protected MapFieldReflectionAccessor internalGetMutableMapFieldReflection(int number)
Parameter
NameDescription
numberint
Returns
TypeDescription
com.google.protobuf.MapFieldReflectionAccessor
Overrides
com.google.protobuf.GeneratedMessageV3.Builder.internalGetMutableMapFieldReflection(int)

isInitialized()

public final boolean isInitialized()
Returns
TypeDescription
boolean
Overrides

mergeFrom(BackendRule other)

public BackendRule.Builder mergeFrom(BackendRule other)
Parameter
NameDescription
otherBackendRule
Returns
TypeDescription
BackendRule.Builder

mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public BackendRule.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputCodedInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
BackendRule.Builder
Overrides
Exceptions
TypeDescription
IOException

mergeFrom(Message other)

public BackendRule.Builder mergeFrom(Message other)
Parameter
NameDescription
otherMessage
Returns
TypeDescription
BackendRule.Builder
Overrides

mergeUnknownFields(UnknownFieldSet unknownFields)

public final BackendRule.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
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
NameDescription
valuesMap<String,BackendRule>
Returns
TypeDescription
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
NameDescription
keyString
valueBackendRule
Returns
TypeDescription
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
NameDescription
keyString
Returns
TypeDescription
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
NameDescription
keyString
Returns
TypeDescription
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
NameDescription
valueString

The address to set.

Returns
TypeDescription
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
NameDescription
valueByteString

The bytes for address to set.

Returns
TypeDescription
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
NameDescription
valuedouble

The deadline to set.

Returns
TypeDescription
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
NameDescription
valueboolean

The disableAuth to set.

Returns
TypeDescription
BackendRule.Builder

This builder for chaining.

setField(Descriptors.FieldDescriptor field, Object value)

public BackendRule.Builder setField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
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
NameDescription
valueString

The jwtAudience to set.

Returns
TypeDescription
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
NameDescription
valueByteString

The bytes for jwtAudience to set.

Returns
TypeDescription
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
NameDescription
valuedouble

The minDeadline to set.

Returns
TypeDescription
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
NameDescription
valuedouble

The operationDeadline to set.

Returns
TypeDescription
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
NameDescription
valueBackendRule.PathTranslation

The pathTranslation to set.

Returns
TypeDescription
BackendRule.Builder

This builder for chaining.

setPathTranslationValue(int value)

public BackendRule.Builder setPathTranslationValue(int value)

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

Parameter
NameDescription
valueint

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

Returns
TypeDescription
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
NameDescription
valueString

The protocol to set.

Returns
TypeDescription
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
NameDescription
valueByteString

The bytes for protocol to set.

Returns
TypeDescription
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
NameDescription
fieldFieldDescriptor
indexint
valueObject
Returns
TypeDescription
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
NameDescription
valueString

The selector to set.

Returns
TypeDescription
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
NameDescription
valueByteString

The bytes for selector to set.

Returns
TypeDescription
BackendRule.Builder

This builder for chaining.

setUnknownFields(UnknownFieldSet unknownFields)

public final BackendRule.Builder setUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
BackendRule.Builder
Overrides