java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessageV3.Builder<Maglev.Builder>
io.envoyproxy.envoy.extensions.load_balancing_policies.maglev.v3.Maglev.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, MaglevOrBuilder, Cloneable
Enclosing class:
Maglev

public static final class Maglev.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Maglev.Builder> implements MaglevOrBuilder
 This configuration allows the built-in Maglev LB policy to be configured via the LB policy
 extension point. See the :ref:`load balancing architecture overview
 <arch_overview_load_balancing_types>` and :ref:`Maglev<arch_overview_load_balancing_types_maglev>` for more information.
 
Protobuf type envoy.extensions.load_balancing_policies.maglev.v3.Maglev
  • Method Details

    • 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.Builder<Maglev.Builder>
    • clear

      public Maglev.Builder 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.GeneratedMessageV3.Builder<Maglev.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.GeneratedMessageV3.Builder<Maglev.Builder>
    • getDefaultInstanceForType

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

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

      public Maglev buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • clone

      public Maglev.Builder clone()
      Specified by:
      clone in interface com.google.protobuf.Message.Builder
      Specified by:
      clone in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clone in class com.google.protobuf.GeneratedMessageV3.Builder<Maglev.Builder>
    • setField

      public Maglev.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      setField in interface com.google.protobuf.Message.Builder
      Overrides:
      setField in class com.google.protobuf.GeneratedMessageV3.Builder<Maglev.Builder>
    • clearField

      public Maglev.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
      Specified by:
      clearField in interface com.google.protobuf.Message.Builder
      Overrides:
      clearField in class com.google.protobuf.GeneratedMessageV3.Builder<Maglev.Builder>
    • clearOneof

      public Maglev.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
      Specified by:
      clearOneof in interface com.google.protobuf.Message.Builder
      Overrides:
      clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<Maglev.Builder>
    • setRepeatedField

      public Maglev.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
      Specified by:
      setRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<Maglev.Builder>
    • addRepeatedField

      public Maglev.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      addRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<Maglev.Builder>
    • mergeFrom

      public Maglev.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<Maglev.Builder>
    • mergeFrom

      public Maglev.Builder mergeFrom(Maglev other)
    • isInitialized

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

      public Maglev.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<Maglev.Builder>
      Throws:
      IOException
    • hasTableSize

      public boolean hasTableSize()
       The table size for Maglev hashing. Maglev aims for "minimal disruption" rather than an absolute guarantee.
       Minimal disruption means that when the set of upstream hosts change, a connection will likely be sent to the same
       upstream as it was before. Increasing the table size reduces the amount of disruption.
       The table size must be prime number limited to 5000011. If it is not specified, the default is 65537.
       
      .google.protobuf.UInt64Value table_size = 1 [(.validate.rules) = { ... }
      Specified by:
      hasTableSize in interface MaglevOrBuilder
      Returns:
      Whether the tableSize field is set.
    • getTableSize

      public com.google.protobuf.UInt64Value getTableSize()
       The table size for Maglev hashing. Maglev aims for "minimal disruption" rather than an absolute guarantee.
       Minimal disruption means that when the set of upstream hosts change, a connection will likely be sent to the same
       upstream as it was before. Increasing the table size reduces the amount of disruption.
       The table size must be prime number limited to 5000011. If it is not specified, the default is 65537.
       
      .google.protobuf.UInt64Value table_size = 1 [(.validate.rules) = { ... }
      Specified by:
      getTableSize in interface MaglevOrBuilder
      Returns:
      The tableSize.
    • setTableSize

      public Maglev.Builder setTableSize(com.google.protobuf.UInt64Value value)
       The table size for Maglev hashing. Maglev aims for "minimal disruption" rather than an absolute guarantee.
       Minimal disruption means that when the set of upstream hosts change, a connection will likely be sent to the same
       upstream as it was before. Increasing the table size reduces the amount of disruption.
       The table size must be prime number limited to 5000011. If it is not specified, the default is 65537.
       
      .google.protobuf.UInt64Value table_size = 1 [(.validate.rules) = { ... }
    • setTableSize

      public Maglev.Builder setTableSize(com.google.protobuf.UInt64Value.Builder builderForValue)
       The table size for Maglev hashing. Maglev aims for "minimal disruption" rather than an absolute guarantee.
       Minimal disruption means that when the set of upstream hosts change, a connection will likely be sent to the same
       upstream as it was before. Increasing the table size reduces the amount of disruption.
       The table size must be prime number limited to 5000011. If it is not specified, the default is 65537.
       
      .google.protobuf.UInt64Value table_size = 1 [(.validate.rules) = { ... }
    • mergeTableSize

      public Maglev.Builder mergeTableSize(com.google.protobuf.UInt64Value value)
       The table size for Maglev hashing. Maglev aims for "minimal disruption" rather than an absolute guarantee.
       Minimal disruption means that when the set of upstream hosts change, a connection will likely be sent to the same
       upstream as it was before. Increasing the table size reduces the amount of disruption.
       The table size must be prime number limited to 5000011. If it is not specified, the default is 65537.
       
      .google.protobuf.UInt64Value table_size = 1 [(.validate.rules) = { ... }
    • clearTableSize

      public Maglev.Builder clearTableSize()
       The table size for Maglev hashing. Maglev aims for "minimal disruption" rather than an absolute guarantee.
       Minimal disruption means that when the set of upstream hosts change, a connection will likely be sent to the same
       upstream as it was before. Increasing the table size reduces the amount of disruption.
       The table size must be prime number limited to 5000011. If it is not specified, the default is 65537.
       
      .google.protobuf.UInt64Value table_size = 1 [(.validate.rules) = { ... }
    • getTableSizeBuilder

      public com.google.protobuf.UInt64Value.Builder getTableSizeBuilder()
       The table size for Maglev hashing. Maglev aims for "minimal disruption" rather than an absolute guarantee.
       Minimal disruption means that when the set of upstream hosts change, a connection will likely be sent to the same
       upstream as it was before. Increasing the table size reduces the amount of disruption.
       The table size must be prime number limited to 5000011. If it is not specified, the default is 65537.
       
      .google.protobuf.UInt64Value table_size = 1 [(.validate.rules) = { ... }
    • getTableSizeOrBuilder

      public com.google.protobuf.UInt64ValueOrBuilder getTableSizeOrBuilder()
       The table size for Maglev hashing. Maglev aims for "minimal disruption" rather than an absolute guarantee.
       Minimal disruption means that when the set of upstream hosts change, a connection will likely be sent to the same
       upstream as it was before. Increasing the table size reduces the amount of disruption.
       The table size must be prime number limited to 5000011. If it is not specified, the default is 65537.
       
      .google.protobuf.UInt64Value table_size = 1 [(.validate.rules) = { ... }
      Specified by:
      getTableSizeOrBuilder in interface MaglevOrBuilder
    • hasConsistentHashingLbConfig

      public boolean hasConsistentHashingLbConfig()
       Common configuration for hashing-based load balancing policies.
       
      .envoy.extensions.load_balancing_policies.common.v3.ConsistentHashingLbConfig consistent_hashing_lb_config = 2;
      Specified by:
      hasConsistentHashingLbConfig in interface MaglevOrBuilder
      Returns:
      Whether the consistentHashingLbConfig field is set.
    • getConsistentHashingLbConfig

      public ConsistentHashingLbConfig getConsistentHashingLbConfig()
       Common configuration for hashing-based load balancing policies.
       
      .envoy.extensions.load_balancing_policies.common.v3.ConsistentHashingLbConfig consistent_hashing_lb_config = 2;
      Specified by:
      getConsistentHashingLbConfig in interface MaglevOrBuilder
      Returns:
      The consistentHashingLbConfig.
    • setConsistentHashingLbConfig

      public Maglev.Builder setConsistentHashingLbConfig(ConsistentHashingLbConfig value)
       Common configuration for hashing-based load balancing policies.
       
      .envoy.extensions.load_balancing_policies.common.v3.ConsistentHashingLbConfig consistent_hashing_lb_config = 2;
    • setConsistentHashingLbConfig

      public Maglev.Builder setConsistentHashingLbConfig(ConsistentHashingLbConfig.Builder builderForValue)
       Common configuration for hashing-based load balancing policies.
       
      .envoy.extensions.load_balancing_policies.common.v3.ConsistentHashingLbConfig consistent_hashing_lb_config = 2;
    • mergeConsistentHashingLbConfig

      public Maglev.Builder mergeConsistentHashingLbConfig(ConsistentHashingLbConfig value)
       Common configuration for hashing-based load balancing policies.
       
      .envoy.extensions.load_balancing_policies.common.v3.ConsistentHashingLbConfig consistent_hashing_lb_config = 2;
    • clearConsistentHashingLbConfig

      public Maglev.Builder clearConsistentHashingLbConfig()
       Common configuration for hashing-based load balancing policies.
       
      .envoy.extensions.load_balancing_policies.common.v3.ConsistentHashingLbConfig consistent_hashing_lb_config = 2;
    • getConsistentHashingLbConfigBuilder

      public ConsistentHashingLbConfig.Builder getConsistentHashingLbConfigBuilder()
       Common configuration for hashing-based load balancing policies.
       
      .envoy.extensions.load_balancing_policies.common.v3.ConsistentHashingLbConfig consistent_hashing_lb_config = 2;
    • getConsistentHashingLbConfigOrBuilder

      public ConsistentHashingLbConfigOrBuilder getConsistentHashingLbConfigOrBuilder()
       Common configuration for hashing-based load balancing policies.
       
      .envoy.extensions.load_balancing_policies.common.v3.ConsistentHashingLbConfig consistent_hashing_lb_config = 2;
      Specified by:
      getConsistentHashingLbConfigOrBuilder in interface MaglevOrBuilder
    • hasLocalityWeightedLbConfig

      public boolean hasLocalityWeightedLbConfig()
       Enable locality weighted load balancing for maglev lb explicitly.
       
      .envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig.LocalityWeightedLbConfig locality_weighted_lb_config = 3;
      Specified by:
      hasLocalityWeightedLbConfig in interface MaglevOrBuilder
      Returns:
      Whether the localityWeightedLbConfig field is set.
    • getLocalityWeightedLbConfig

      public LocalityLbConfig.LocalityWeightedLbConfig getLocalityWeightedLbConfig()
       Enable locality weighted load balancing for maglev lb explicitly.
       
      .envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig.LocalityWeightedLbConfig locality_weighted_lb_config = 3;
      Specified by:
      getLocalityWeightedLbConfig in interface MaglevOrBuilder
      Returns:
      The localityWeightedLbConfig.
    • setLocalityWeightedLbConfig

      public Maglev.Builder setLocalityWeightedLbConfig(LocalityLbConfig.LocalityWeightedLbConfig value)
       Enable locality weighted load balancing for maglev lb explicitly.
       
      .envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig.LocalityWeightedLbConfig locality_weighted_lb_config = 3;
    • setLocalityWeightedLbConfig

      public Maglev.Builder setLocalityWeightedLbConfig(LocalityLbConfig.LocalityWeightedLbConfig.Builder builderForValue)
       Enable locality weighted load balancing for maglev lb explicitly.
       
      .envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig.LocalityWeightedLbConfig locality_weighted_lb_config = 3;
    • mergeLocalityWeightedLbConfig

      public Maglev.Builder mergeLocalityWeightedLbConfig(LocalityLbConfig.LocalityWeightedLbConfig value)
       Enable locality weighted load balancing for maglev lb explicitly.
       
      .envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig.LocalityWeightedLbConfig locality_weighted_lb_config = 3;
    • clearLocalityWeightedLbConfig

      public Maglev.Builder clearLocalityWeightedLbConfig()
       Enable locality weighted load balancing for maglev lb explicitly.
       
      .envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig.LocalityWeightedLbConfig locality_weighted_lb_config = 3;
    • getLocalityWeightedLbConfigBuilder

      public LocalityLbConfig.LocalityWeightedLbConfig.Builder getLocalityWeightedLbConfigBuilder()
       Enable locality weighted load balancing for maglev lb explicitly.
       
      .envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig.LocalityWeightedLbConfig locality_weighted_lb_config = 3;
    • getLocalityWeightedLbConfigOrBuilder

      public LocalityLbConfig.LocalityWeightedLbConfigOrBuilder getLocalityWeightedLbConfigOrBuilder()
       Enable locality weighted load balancing for maglev lb explicitly.
       
      .envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig.LocalityWeightedLbConfig locality_weighted_lb_config = 3;
      Specified by:
      getLocalityWeightedLbConfigOrBuilder in interface MaglevOrBuilder
    • setUnknownFields

      public final Maglev.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      setUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<Maglev.Builder>
    • mergeUnknownFields

      public final Maglev.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      mergeUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<Maglev.Builder>