Class Cluster.RingHashLbConfig.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<Cluster.RingHashLbConfig.Builder>
com.google.protobuf.GeneratedMessage.Builder<Cluster.RingHashLbConfig.Builder>
io.envoyproxy.envoy.config.cluster.v3.Cluster.RingHashLbConfig.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cluster.RingHashLbConfigOrBuilder, Cloneable
Enclosing class:
Cluster.RingHashLbConfig

public static final class Cluster.RingHashLbConfig.Builder extends com.google.protobuf.GeneratedMessage.Builder<Cluster.RingHashLbConfig.Builder> implements Cluster.RingHashLbConfigOrBuilder
 Specific configuration for the :ref:`RingHash<arch_overview_load_balancing_types_ring_hash>`
 load balancing policy.
 
Protobuf type envoy.config.cluster.v3.Cluster.RingHashLbConfig
  • Field Details

    • bitField0_

      private int bitField0_
    • minimumRingSize_

      private com.google.protobuf.UInt64Value minimumRingSize_
    • minimumRingSizeBuilder_

      private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.UInt64Value,com.google.protobuf.UInt64Value.Builder,com.google.protobuf.UInt64ValueOrBuilder> minimumRingSizeBuilder_
    • hashFunction_

      private int hashFunction_
    • maximumRingSize_

      private com.google.protobuf.UInt64Value maximumRingSize_
    • maximumRingSizeBuilder_

      private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.UInt64Value,com.google.protobuf.UInt64Value.Builder,com.google.protobuf.UInt64ValueOrBuilder> maximumRingSizeBuilder_
  • Constructor Details

    • Builder

      private Builder()
    • Builder

      private Builder(com.google.protobuf.AbstractMessage.BuilderParent parent)
  • Method Details

    • getDescriptor

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

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage.Builder<Cluster.RingHashLbConfig.Builder>
    • maybeForceBuilderInitialization

      private void maybeForceBuilderInitialization()
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessage.Builder<Cluster.RingHashLbConfig.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessage.Builder<Cluster.RingHashLbConfig.Builder>
    • getDefaultInstanceForType

      public Cluster.RingHashLbConfig getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      public Cluster.RingHashLbConfig build()
      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public Cluster.RingHashLbConfig buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • buildPartial0

      private void buildPartial0(Cluster.RingHashLbConfig result)
    • mergeFrom

      public Cluster.RingHashLbConfig.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<Cluster.RingHashLbConfig.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage.Builder<Cluster.RingHashLbConfig.Builder>
    • mergeFrom

      public Cluster.RingHashLbConfig.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<Cluster.RingHashLbConfig.Builder>
      Throws:
      IOException
    • hasMinimumRingSize

      public boolean hasMinimumRingSize()
       Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
       provided host) the better the request distribution will reflect the desired weights. Defaults
       to 1024 entries, and limited to 8M entries. See also
       :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
       
      .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
      Specified by:
      hasMinimumRingSize in interface Cluster.RingHashLbConfigOrBuilder
      Returns:
      Whether the minimumRingSize field is set.
    • getMinimumRingSize

      public com.google.protobuf.UInt64Value getMinimumRingSize()
       Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
       provided host) the better the request distribution will reflect the desired weights. Defaults
       to 1024 entries, and limited to 8M entries. See also
       :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
       
      .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
      Specified by:
      getMinimumRingSize in interface Cluster.RingHashLbConfigOrBuilder
      Returns:
      The minimumRingSize.
    • setMinimumRingSize

      public Cluster.RingHashLbConfig.Builder setMinimumRingSize(com.google.protobuf.UInt64Value value)
       Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
       provided host) the better the request distribution will reflect the desired weights. Defaults
       to 1024 entries, and limited to 8M entries. See also
       :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
       
      .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
    • setMinimumRingSize

      public Cluster.RingHashLbConfig.Builder setMinimumRingSize(com.google.protobuf.UInt64Value.Builder builderForValue)
       Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
       provided host) the better the request distribution will reflect the desired weights. Defaults
       to 1024 entries, and limited to 8M entries. See also
       :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
       
      .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
    • mergeMinimumRingSize

      public Cluster.RingHashLbConfig.Builder mergeMinimumRingSize(com.google.protobuf.UInt64Value value)
       Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
       provided host) the better the request distribution will reflect the desired weights. Defaults
       to 1024 entries, and limited to 8M entries. See also
       :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
       
      .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
    • clearMinimumRingSize

      public Cluster.RingHashLbConfig.Builder clearMinimumRingSize()
       Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
       provided host) the better the request distribution will reflect the desired weights. Defaults
       to 1024 entries, and limited to 8M entries. See also
       :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
       
      .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
    • getMinimumRingSizeBuilder

      public com.google.protobuf.UInt64Value.Builder getMinimumRingSizeBuilder()
       Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
       provided host) the better the request distribution will reflect the desired weights. Defaults
       to 1024 entries, and limited to 8M entries. See also
       :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
       
      .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
    • getMinimumRingSizeOrBuilder

      public com.google.protobuf.UInt64ValueOrBuilder getMinimumRingSizeOrBuilder()
       Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
       provided host) the better the request distribution will reflect the desired weights. Defaults
       to 1024 entries, and limited to 8M entries. See also
       :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
       
      .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
      Specified by:
      getMinimumRingSizeOrBuilder in interface Cluster.RingHashLbConfigOrBuilder
    • internalGetMinimumRingSizeFieldBuilder

      private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.UInt64Value,com.google.protobuf.UInt64Value.Builder,com.google.protobuf.UInt64ValueOrBuilder> internalGetMinimumRingSizeFieldBuilder()
       Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
       provided host) the better the request distribution will reflect the desired weights. Defaults
       to 1024 entries, and limited to 8M entries. See also
       :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
       
      .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
    • getHashFunctionValue

      public int getHashFunctionValue()
       The hash function used to hash hosts onto the ketama ring. The value defaults to
       :ref:`XX_HASH<envoy_v3_api_enum_value_config.cluster.v3.Cluster.RingHashLbConfig.HashFunction.XX_HASH>`.
       
      .envoy.config.cluster.v3.Cluster.RingHashLbConfig.HashFunction hash_function = 3 [(.validate.rules) = { ... }
      Specified by:
      getHashFunctionValue in interface Cluster.RingHashLbConfigOrBuilder
      Returns:
      The enum numeric value on the wire for hashFunction.
    • setHashFunctionValue

      public Cluster.RingHashLbConfig.Builder setHashFunctionValue(int value)
       The hash function used to hash hosts onto the ketama ring. The value defaults to
       :ref:`XX_HASH<envoy_v3_api_enum_value_config.cluster.v3.Cluster.RingHashLbConfig.HashFunction.XX_HASH>`.
       
      .envoy.config.cluster.v3.Cluster.RingHashLbConfig.HashFunction hash_function = 3 [(.validate.rules) = { ... }
      Parameters:
      value - The enum numeric value on the wire for hashFunction to set.
      Returns:
      This builder for chaining.
    • getHashFunction

      public Cluster.RingHashLbConfig.HashFunction getHashFunction()
       The hash function used to hash hosts onto the ketama ring. The value defaults to
       :ref:`XX_HASH<envoy_v3_api_enum_value_config.cluster.v3.Cluster.RingHashLbConfig.HashFunction.XX_HASH>`.
       
      .envoy.config.cluster.v3.Cluster.RingHashLbConfig.HashFunction hash_function = 3 [(.validate.rules) = { ... }
      Specified by:
      getHashFunction in interface Cluster.RingHashLbConfigOrBuilder
      Returns:
      The hashFunction.
    • setHashFunction

       The hash function used to hash hosts onto the ketama ring. The value defaults to
       :ref:`XX_HASH<envoy_v3_api_enum_value_config.cluster.v3.Cluster.RingHashLbConfig.HashFunction.XX_HASH>`.
       
      .envoy.config.cluster.v3.Cluster.RingHashLbConfig.HashFunction hash_function = 3 [(.validate.rules) = { ... }
      Parameters:
      value - The hashFunction to set.
      Returns:
      This builder for chaining.
    • clearHashFunction

      public Cluster.RingHashLbConfig.Builder clearHashFunction()
       The hash function used to hash hosts onto the ketama ring. The value defaults to
       :ref:`XX_HASH<envoy_v3_api_enum_value_config.cluster.v3.Cluster.RingHashLbConfig.HashFunction.XX_HASH>`.
       
      .envoy.config.cluster.v3.Cluster.RingHashLbConfig.HashFunction hash_function = 3 [(.validate.rules) = { ... }
      Returns:
      This builder for chaining.
    • hasMaximumRingSize

      public boolean hasMaximumRingSize()
       Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
       to further constrain resource use. See also
       :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
       
      .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }
      Specified by:
      hasMaximumRingSize in interface Cluster.RingHashLbConfigOrBuilder
      Returns:
      Whether the maximumRingSize field is set.
    • getMaximumRingSize

      public com.google.protobuf.UInt64Value getMaximumRingSize()
       Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
       to further constrain resource use. See also
       :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
       
      .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }
      Specified by:
      getMaximumRingSize in interface Cluster.RingHashLbConfigOrBuilder
      Returns:
      The maximumRingSize.
    • setMaximumRingSize

      public Cluster.RingHashLbConfig.Builder setMaximumRingSize(com.google.protobuf.UInt64Value value)
       Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
       to further constrain resource use. See also
       :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
       
      .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }
    • setMaximumRingSize

      public Cluster.RingHashLbConfig.Builder setMaximumRingSize(com.google.protobuf.UInt64Value.Builder builderForValue)
       Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
       to further constrain resource use. See also
       :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
       
      .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }
    • mergeMaximumRingSize

      public Cluster.RingHashLbConfig.Builder mergeMaximumRingSize(com.google.protobuf.UInt64Value value)
       Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
       to further constrain resource use. See also
       :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
       
      .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }
    • clearMaximumRingSize

      public Cluster.RingHashLbConfig.Builder clearMaximumRingSize()
       Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
       to further constrain resource use. See also
       :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
       
      .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }
    • getMaximumRingSizeBuilder

      public com.google.protobuf.UInt64Value.Builder getMaximumRingSizeBuilder()
       Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
       to further constrain resource use. See also
       :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
       
      .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }
    • getMaximumRingSizeOrBuilder

      public com.google.protobuf.UInt64ValueOrBuilder getMaximumRingSizeOrBuilder()
       Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
       to further constrain resource use. See also
       :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
       
      .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }
      Specified by:
      getMaximumRingSizeOrBuilder in interface Cluster.RingHashLbConfigOrBuilder
    • internalGetMaximumRingSizeFieldBuilder

      private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.UInt64Value,com.google.protobuf.UInt64Value.Builder,com.google.protobuf.UInt64ValueOrBuilder> internalGetMaximumRingSizeFieldBuilder()
       Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
       to further constrain resource use. See also
       :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
       
      .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }