Class Cluster.LbSubsetConfig.LbSubsetSelector

    • Field Detail

      • SINGLE_HOST_PER_SUBSET_FIELD_NUMBER

        public static final int SINGLE_HOST_PER_SUBSET_FIELD_NUMBER
        See Also:
        Constant Field Values
      • FALLBACK_POLICY_FIELD_NUMBER

        public static final int FALLBACK_POLICY_FIELD_NUMBER
        See Also:
        Constant Field Values
      • FALLBACK_KEYS_SUBSET_FIELD_NUMBER

        public static final int FALLBACK_KEYS_SUBSET_FIELD_NUMBER
        See Also:
        Constant Field Values
    • Method Detail

      • newInstance

        protected Object newInstance​(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
        Overrides:
        newInstance in class com.google.protobuf.GeneratedMessageV3
      • getUnknownFields

        public final com.google.protobuf.UnknownFieldSet getUnknownFields()
        Specified by:
        getUnknownFields in interface com.google.protobuf.MessageOrBuilder
        Overrides:
        getUnknownFields in class com.google.protobuf.GeneratedMessageV3
      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
      • getKeys

        public String getKeys​(int index)
         List of keys to match with the weighted cluster metadata.
         
        repeated string keys = 1;
        Specified by:
        getKeys in interface Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder
        Parameters:
        index - The index of the element to return.
        Returns:
        The keys at the given index.
      • getKeysBytes

        public com.google.protobuf.ByteString getKeysBytes​(int index)
         List of keys to match with the weighted cluster metadata.
         
        repeated string keys = 1;
        Specified by:
        getKeysBytes in interface Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder
        Parameters:
        index - The index of the value to return.
        Returns:
        The bytes of the keys at the given index.
      • getSingleHostPerSubset

        public boolean getSingleHostPerSubset()
         Selects a mode of operation in which each subset has only one host. This mode uses the same rules for
         choosing a host, but updating hosts is faster, especially for large numbers of hosts.
         If a match is found to a host, that host will be used regardless of priority levels, unless the host is unhealthy.
         Currently, this mode is only supported if ``subset_selectors`` has only one entry, and ``keys`` contains
         only one entry.
         When this mode is enabled, configurations that contain more than one host with the same metadata value for the single key in ``keys``
         will use only one of the hosts with the given key; no requests will be routed to the others. The cluster gauge
         :ref:`lb_subsets_single_host_per_subset_duplicate<config_cluster_manager_cluster_stats_subset_lb>` indicates how many duplicates are
         present in the current configuration.
         
        bool single_host_per_subset = 4;
        Specified by:
        getSingleHostPerSubset in interface Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder
        Returns:
        The singleHostPerSubset.
      • getFallbackPolicyValue

        public int getFallbackPolicyValue()
         The behavior used when no endpoint subset matches the selected route's
         metadata.
         
        .envoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.LbSubsetSelectorFallbackPolicy fallback_policy = 2 [(.validate.rules) = { ... }
        Specified by:
        getFallbackPolicyValue in interface Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder
        Returns:
        The enum numeric value on the wire for fallbackPolicy.
      • getFallbackKeysSubsetList

        public com.google.protobuf.ProtocolStringList getFallbackKeysSubsetList()
         Subset of
         :ref:`keys<envoy_v3_api_field_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.keys>` used by
         :ref:`KEYS_SUBSET<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.LbSubsetSelectorFallbackPolicy.KEYS_SUBSET>`
         fallback policy.
         It has to be a non empty list if KEYS_SUBSET fallback policy is selected.
         For any other fallback policy the parameter is not used and should not be set.
         Only values also present in
         :ref:`keys<envoy_v3_api_field_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.keys>` are allowed, but
         ``fallback_keys_subset`` cannot be equal to ``keys``.
         
        repeated string fallback_keys_subset = 3;
        Specified by:
        getFallbackKeysSubsetList in interface Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder
        Returns:
        A list containing the fallbackKeysSubset.
      • getFallbackKeysSubsetCount

        public int getFallbackKeysSubsetCount()
         Subset of
         :ref:`keys<envoy_v3_api_field_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.keys>` used by
         :ref:`KEYS_SUBSET<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.LbSubsetSelectorFallbackPolicy.KEYS_SUBSET>`
         fallback policy.
         It has to be a non empty list if KEYS_SUBSET fallback policy is selected.
         For any other fallback policy the parameter is not used and should not be set.
         Only values also present in
         :ref:`keys<envoy_v3_api_field_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.keys>` are allowed, but
         ``fallback_keys_subset`` cannot be equal to ``keys``.
         
        repeated string fallback_keys_subset = 3;
        Specified by:
        getFallbackKeysSubsetCount in interface Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder
        Returns:
        The count of fallbackKeysSubset.
      • getFallbackKeysSubset

        public String getFallbackKeysSubset​(int index)
         Subset of
         :ref:`keys<envoy_v3_api_field_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.keys>` used by
         :ref:`KEYS_SUBSET<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.LbSubsetSelectorFallbackPolicy.KEYS_SUBSET>`
         fallback policy.
         It has to be a non empty list if KEYS_SUBSET fallback policy is selected.
         For any other fallback policy the parameter is not used and should not be set.
         Only values also present in
         :ref:`keys<envoy_v3_api_field_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.keys>` are allowed, but
         ``fallback_keys_subset`` cannot be equal to ``keys``.
         
        repeated string fallback_keys_subset = 3;
        Specified by:
        getFallbackKeysSubset in interface Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder
        Parameters:
        index - The index of the element to return.
        Returns:
        The fallbackKeysSubset at the given index.
      • getFallbackKeysSubsetBytes

        public com.google.protobuf.ByteString getFallbackKeysSubsetBytes​(int index)
         Subset of
         :ref:`keys<envoy_v3_api_field_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.keys>` used by
         :ref:`KEYS_SUBSET<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.LbSubsetSelectorFallbackPolicy.KEYS_SUBSET>`
         fallback policy.
         It has to be a non empty list if KEYS_SUBSET fallback policy is selected.
         For any other fallback policy the parameter is not used and should not be set.
         Only values also present in
         :ref:`keys<envoy_v3_api_field_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector.keys>` are allowed, but
         ``fallback_keys_subset`` cannot be equal to ``keys``.
         
        repeated string fallback_keys_subset = 3;
        Specified by:
        getFallbackKeysSubsetBytes in interface Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder
        Parameters:
        index - The index of the value to return.
        Returns:
        The bytes of the fallbackKeysSubset at the given index.
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessageV3
        Throws:
        IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessageV3
      • equals

        public boolean equals​(Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static Cluster.LbSubsetConfig.LbSubsetSelector parseFrom​(ByteBuffer data,
                                                                        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                                 throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Cluster.LbSubsetConfig.LbSubsetSelector parseFrom​(com.google.protobuf.ByteString data)
                                                                 throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Cluster.LbSubsetConfig.LbSubsetSelector parseFrom​(com.google.protobuf.ByteString data,
                                                                        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                                 throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Cluster.LbSubsetConfig.LbSubsetSelector parseFrom​(byte[] data)
                                                                 throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Cluster.LbSubsetConfig.LbSubsetSelector parseFrom​(byte[] data,
                                                                        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                                 throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • newBuilderForType

        public Cluster.LbSubsetConfig.LbSubsetSelector.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected Cluster.LbSubsetConfig.LbSubsetSelector.Builder newBuilderForType​(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
        Specified by:
        newBuilderForType in class com.google.protobuf.GeneratedMessageV3
      • getParserForType

        public com.google.protobuf.Parser<Cluster.LbSubsetConfig.LbSubsetSelector> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstanceForType

        public Cluster.LbSubsetConfig.LbSubsetSelector getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder