Class 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, java.lang.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 Detail

      • 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 Detail

      • Builder

        private Builder()
      • Builder

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

      • 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()
      • 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
      • 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 java.io.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:
        java.io.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
      • getMinimumRingSizeFieldBuilder

        private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.UInt64Value,​com.google.protobuf.UInt64Value.Builder,​com.google.protobuf.UInt64ValueOrBuilder> getMinimumRingSizeFieldBuilder()
         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

        public Cluster.RingHashLbConfig.Builder setHashFunction​(Cluster.RingHashLbConfig.HashFunction 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 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
      • getMaximumRingSizeFieldBuilder

        private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.UInt64Value,​com.google.protobuf.UInt64Value.Builder,​com.google.protobuf.UInt64ValueOrBuilder> getMaximumRingSizeFieldBuilder()
         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) = { ... }