Class: Google::Apis::NetworkservicesV1::EndpointMatcherMetadataLabelMatcher
- Inherits:
-
Object
- Object
- Google::Apis::NetworkservicesV1::EndpointMatcherMetadataLabelMatcher
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/networkservices_v1/classes.rb,
lib/google/apis/networkservices_v1/representations.rb,
lib/google/apis/networkservices_v1/representations.rb
Overview
The matcher that is based on node metadata presented by xDS clients.
Instance Attribute Summary collapse
-
#metadata_label_match_criteria ⇒ String
Specifies how matching should be done.
-
#metadata_labels ⇒ Array<Google::Apis::NetworkservicesV1::EndpointMatcherMetadataLabelMatcherMetadataLabels>
The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list can have at most 64 entries.
Instance Method Summary collapse
-
#initialize(**args) ⇒ EndpointMatcherMetadataLabelMatcher
constructor
A new instance of EndpointMatcherMetadataLabelMatcher.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ EndpointMatcherMetadataLabelMatcher
Returns a new instance of EndpointMatcherMetadataLabelMatcher.
274 275 276 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 274 def initialize(**args) update!(**args) end |
Instance Attribute Details
#metadata_label_match_criteria ⇒ String
Specifies how matching should be done. Supported values are: MATCH_ANY: At
least one of the Labels specified in the matcher should match the metadata
presented by xDS client. MATCH_ALL: The metadata presented by the xDS client
should contain all of the labels specified here. The selection is determined
based on the best match. For example, suppose there are three EndpointPolicy
resources P1, P2 and P3 and if P1 has a the matcher as MATCH_ANY , P2 has
MATCH_ALL , and P3 has MATCH_ALL . If a client with label connects, the config
from P1 will be selected. If a client with label connects, the config from P2
will be selected. If a client with label connects, the config from P3 will be
selected. If there is more than one best match, (for example, if a config P4
with selector exists and if a client with label connects), pick up the one
with older creation time.
Corresponds to the JSON property metadataLabelMatchCriteria
264 265 266 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 264 def @metadata_label_match_criteria end |
#metadata_labels ⇒ Array<Google::Apis::NetworkservicesV1::EndpointMatcherMetadataLabelMatcherMetadataLabels>
The list of label value pairs that must match labels in the provided metadata
based on filterMatchCriteria This list can have at most 64 entries. The list
can be empty if the match criteria is MATCH_ANY, to specify a wildcard match (
i.e this matches any client).
Corresponds to the JSON property metadataLabels
272 273 274 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 272 def @metadata_labels end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
279 280 281 282 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 279 def update!(**args) @metadata_label_match_criteria = args[:metadata_label_match_criteria] if args.key?(:metadata_label_match_criteria) @metadata_labels = args[:metadata_labels] if args.key?(:metadata_labels) end |