public final class RoutingParameter extends GeneratedMessageV3 implements RoutingParameterOrBuilder
A projection from an input message to the GRPC or REST header.
Protobuf type google.api.RoutingParameter
Static Fields
FIELD_FIELD_NUMBER
public static final int FIELD_FIELD_NUMBER
Field Value
PATH_TEMPLATE_FIELD_NUMBER
public static final int PATH_TEMPLATE_FIELD_NUMBER
Field Value
Static Methods
getDefaultInstance()
public static RoutingParameter getDefaultInstance()
Returns
getDescriptor()
public static final Descriptors.Descriptor getDescriptor()
Returns
newBuilder()
public static RoutingParameter.Builder newBuilder()
Returns
newBuilder(RoutingParameter prototype)
public static RoutingParameter.Builder newBuilder(RoutingParameter prototype)
Parameter
Returns
public static RoutingParameter parseDelimitedFrom(InputStream input)
Parameter
Returns
Exceptions
public static RoutingParameter parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parseFrom(byte[] data)
public static RoutingParameter parseFrom(byte[] data)
Parameter
Name | Description |
data | byte[]
|
Returns
Exceptions
parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
public static RoutingParameter parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parseFrom(ByteString data)
public static RoutingParameter parseFrom(ByteString data)
Parameter
Returns
Exceptions
parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public static RoutingParameter parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static RoutingParameter parseFrom(CodedInputStream input)
Parameter
Returns
Exceptions
public static RoutingParameter parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static RoutingParameter parseFrom(InputStream input)
Parameter
Returns
Exceptions
public static RoutingParameter parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parseFrom(ByteBuffer data)
public static RoutingParameter parseFrom(ByteBuffer data)
Parameter
Returns
Exceptions
parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
public static RoutingParameter parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parser()
public static Parser<RoutingParameter> parser()
Returns
Methods
equals(Object obj)
public boolean equals(Object obj)
Parameter
Returns
Overrides
getDefaultInstanceForType()
public RoutingParameter getDefaultInstanceForType()
Returns
getField()
A request field to extract the header key-value pair from.
string field = 1;
Returns
Type | Description |
String | The field.
|
getFieldBytes()
public ByteString getFieldBytes()
A request field to extract the header key-value pair from.
string field = 1;
Returns
getParserForType()
public Parser<RoutingParameter> getParserForType()
Returns
Overrides
getPathTemplate()
public String getPathTemplate()
A pattern matching the key-value field. Optional.
If not specified, the whole field specified in the field
field will be
taken as value, and its name used as key. If specified, it MUST contain
exactly one named segment (along with any number of unnamed segments) The
pattern will be matched over the field specified in the field
field, then
if the match is successful:
- the name of the single named segment will be used as a header name,
- the match value of the segment will be used as a header value;
if the match is NOT successful, nothing will be sent.
Example:
-- This is a field in the request message
| that the header value will be extracted from.
|
| -- This is the key name in the
| | routing header.
V |
field: "table_name" v
path_template: "projects/*/{table_location=instances/*}/tables/*"
^ ^
| |
In the {} brackets is the pattern that -- |
specifies what to extract from the |
field as a value to be sent. |
|
The string in the field must match the whole pattern --
before brackets, inside brackets, after brackets.
When looking at this specific example, we can see that:
- A key-value pair with the key
table_location
and the value matching instances/*
should be added
to the x-goog-request-params routing header.
- The value is extracted from the request message's
table_name
field
if it matches the full pattern specified:
projects/*/instances/*/tables/*
.
NB: If the path_template
field is not provided, the key name is
equal to the field name, and the whole field should be sent as a value.
This makes the pattern for the field and the value functionally equivalent
to
, and the configuration
{
field: "table_name"
}
is a functionally equivalent shorthand to:
{
field: "table_name"
path_template: "{table_name=}"
}
See Example 1 for more details.
string path_template = 2;
Returns
Type | Description |
String | The pathTemplate.
|
getPathTemplateBytes()
public ByteString getPathTemplateBytes()
A pattern matching the key-value field. Optional.
If not specified, the whole field specified in the field
field will be
taken as value, and its name used as key. If specified, it MUST contain
exactly one named segment (along with any number of unnamed segments) The
pattern will be matched over the field specified in the field
field, then
if the match is successful:
- the name of the single named segment will be used as a header name,
- the match value of the segment will be used as a header value;
if the match is NOT successful, nothing will be sent.
Example:
-- This is a field in the request message
| that the header value will be extracted from.
|
| -- This is the key name in the
| | routing header.
V |
field: "table_name" v
path_template: "projects/*/{table_location=instances/*}/tables/*"
^ ^
| |
In the {} brackets is the pattern that -- |
specifies what to extract from the |
field as a value to be sent. |
|
The string in the field must match the whole pattern --
before brackets, inside brackets, after brackets.
When looking at this specific example, we can see that:
- A key-value pair with the key
table_location
and the value matching instances/*
should be added
to the x-goog-request-params routing header.
- The value is extracted from the request message's
table_name
field
if it matches the full pattern specified:
projects/*/instances/*/tables/*
.
NB: If the path_template
field is not provided, the key name is
equal to the field name, and the whole field should be sent as a value.
This makes the pattern for the field and the value functionally equivalent
to
, and the configuration
{
field: "table_name"
}
is a functionally equivalent shorthand to:
{
field: "table_name"
path_template: "{table_name=}"
}
See Example 1 for more details.
string path_template = 2;
Returns
Type | Description |
ByteString | The bytes for pathTemplate.
|
getSerializedSize()
public int getSerializedSize()
Returns
Overrides
getUnknownFields()
public final UnknownFieldSet getUnknownFields()
Returns
Overrides
hashCode()
Returns
Overrides
internalGetFieldAccessorTable()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Overrides
isInitialized()
public final boolean isInitialized()
Returns
Overrides
newBuilderForType()
public RoutingParameter.Builder newBuilderForType()
Returns
newBuilderForType(GeneratedMessageV3.BuilderParent parent)
protected RoutingParameter.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
Returns
Overrides
newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
Returns
Overrides
toBuilder()
public RoutingParameter.Builder toBuilder()
Returns
writeTo(CodedOutputStream output)
public void writeTo(CodedOutputStream output)
Parameter
Overrides
Exceptions