public final class MetadataFilter extends GeneratedMessageV3 implements MetadataFilterOrBuilder
Opaque filter criteria used by loadbalancers to restrict routing configuration to a limited set of loadbalancing proxies. Proxies and sidecars involved in loadbalancing would typically present metadata to the loadbalancers which need to match criteria specified here. If a match takes place, the relevant configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. An example for using metadataFilters would be: if loadbalancing involves Envoys, they will only receive routing configuration when values in metadataFilters match values supplied in of their XDS requests to loadbalancers.
Protobuf type google.cloud.compute.v1.MetadataFilter
Static Fields
public static final int FILTER_LABELS_FIELD_NUMBER
Field Value
public static final int FILTER_MATCH_CRITERIA_FIELD_NUMBER
Field Value
Static Methods
public static MetadataFilter getDefaultInstance()
Returns
public static final Descriptors.Descriptor getDescriptor()
Returns
public static MetadataFilter.Builder newBuilder()
Returns
public static MetadataFilter.Builder newBuilder(MetadataFilter prototype)
Parameter
Returns
public static MetadataFilter parseDelimitedFrom(InputStream input)
Parameter
Returns
Exceptions
public static MetadataFilter parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static MetadataFilter parseFrom(byte[] data)
Parameter
Name | Description |
data | byte[]
|
Returns
Exceptions
public static MetadataFilter parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static MetadataFilter parseFrom(ByteString data)
Parameter
Returns
Exceptions
public static MetadataFilter parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static MetadataFilter parseFrom(CodedInputStream input)
Parameter
Returns
Exceptions
public static MetadataFilter parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static MetadataFilter parseFrom(InputStream input)
Parameter
Returns
Exceptions
public static MetadataFilter parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static MetadataFilter parseFrom(ByteBuffer data)
Parameter
Returns
Exceptions
public static MetadataFilter parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static Parser<MetadataFilter> parser()
Returns
Methods
public boolean equals(Object obj)
Parameter
Returns
Overrides
public MetadataFilter getDefaultInstanceForType()
Returns
public MetadataFilterLabelMatch getFilterLabels(int index)
The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list must not be empty and can have at the most 64 entries.
repeated .google.cloud.compute.v1.MetadataFilterLabelMatch filter_labels = 307903142;
Parameter
Returns
public int getFilterLabelsCount()
The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list must not be empty and can have at the most 64 entries.
repeated .google.cloud.compute.v1.MetadataFilterLabelMatch filter_labels = 307903142;
Returns
public List<MetadataFilterLabelMatch> getFilterLabelsList()
The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list must not be empty and can have at the most 64 entries.
repeated .google.cloud.compute.v1.MetadataFilterLabelMatch filter_labels = 307903142;
Returns
public MetadataFilterLabelMatchOrBuilder getFilterLabelsOrBuilder(int index)
The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list must not be empty and can have at the most 64 entries.
repeated .google.cloud.compute.v1.MetadataFilterLabelMatch filter_labels = 307903142;
Parameter
Returns
public List<? extends MetadataFilterLabelMatchOrBuilder> getFilterLabelsOrBuilderList()
The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list must not be empty and can have at the most 64 entries.
repeated .google.cloud.compute.v1.MetadataFilterLabelMatch filter_labels = 307903142;
Returns
Type | Description |
List<? extends com.google.cloud.compute.v1.MetadataFilterLabelMatchOrBuilder> | |
public String getFilterMatchCriteria()
Specifies how individual filterLabel matches within the list of filterLabels contribute towards the overall metadataFilter match. Supported values are: - MATCH_ANY: At least one of the filterLabels must have a matching label in the provided metadata. - MATCH_ALL: All filterLabels must have matching labels in the provided metadata.
Check the FilterMatchCriteria enum for the list of possible values.
optional string filter_match_criteria = 239970368;
Returns
Type | Description |
String | The filterMatchCriteria.
|
public ByteString getFilterMatchCriteriaBytes()
Specifies how individual filterLabel matches within the list of filterLabels contribute towards the overall metadataFilter match. Supported values are: - MATCH_ANY: At least one of the filterLabels must have a matching label in the provided metadata. - MATCH_ALL: All filterLabels must have matching labels in the provided metadata.
Check the FilterMatchCriteria enum for the list of possible values.
optional string filter_match_criteria = 239970368;
Returns
Type | Description |
ByteString | The bytes for filterMatchCriteria.
|
public Parser<MetadataFilter> getParserForType()
Returns
Overrides
public int getSerializedSize()
Returns
Overrides
public final UnknownFieldSet getUnknownFields()
Returns
Overrides
public boolean hasFilterMatchCriteria()
Specifies how individual filterLabel matches within the list of filterLabels contribute towards the overall metadataFilter match. Supported values are: - MATCH_ANY: At least one of the filterLabels must have a matching label in the provided metadata. - MATCH_ALL: All filterLabels must have matching labels in the provided metadata.
Check the FilterMatchCriteria enum for the list of possible values.
optional string filter_match_criteria = 239970368;
Returns
Type | Description |
boolean | Whether the filterMatchCriteria field is set.
|
Returns
Overrides
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Overrides
public final boolean isInitialized()
Returns
Overrides
public MetadataFilter.Builder newBuilderForType()
Returns
protected MetadataFilter.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
Returns
Overrides
protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
Returns
Overrides
public MetadataFilter.Builder toBuilder()
Returns
public void writeTo(CodedOutputStream output)
Parameter
Overrides
Exceptions