Class ClusterManager.Builder

  • All Implemented Interfaces:
    com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, ClusterManagerOrBuilder, java.lang.Cloneable
    Enclosing class:
    ClusterManager

    public static final class ClusterManager.Builder
    extends com.google.protobuf.GeneratedMessage.Builder<ClusterManager.Builder>
    implements ClusterManagerOrBuilder
     Cluster manager :ref:`architecture overview <arch_overview_cluster_manager>`.
     [#next-free-field: 6]
     
    Protobuf type envoy.config.bootstrap.v3.ClusterManager
    • 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<ClusterManager.Builder>
      • maybeForceBuilderInitialization

        private void maybeForceBuilderInitialization()
      • clear

        public ClusterManager.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.GeneratedMessage.Builder<ClusterManager.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<ClusterManager.Builder>
      • getDefaultInstanceForType

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

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

        public ClusterManager 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​(ClusterManager result)
      • mergeFrom

        public ClusterManager.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<ClusterManager.Builder>
      • isInitialized

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

        public ClusterManager.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<ClusterManager.Builder>
        Throws:
        java.io.IOException
      • getLocalClusterName

        public java.lang.String getLocalClusterName()
         Name of the local cluster (i.e., the cluster that owns the Envoy running
         this configuration). In order to enable :ref:`zone aware routing
         <arch_overview_load_balancing_zone_aware_routing>` this option must be set.
         If ``local_cluster_name`` is defined then :ref:`clusters
         <envoy_v3_api_msg_config.cluster.v3.Cluster>` must be defined in the :ref:`Bootstrap
         static cluster resources
         <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.StaticResources.clusters>`. This is unrelated to
         the :option:`--service-cluster` option which does not `affect zone aware
         routing <https://github.com/envoyproxy/envoy/issues/774>`_.
         
        string local_cluster_name = 1;
        Specified by:
        getLocalClusterName in interface ClusterManagerOrBuilder
        Returns:
        The localClusterName.
      • getLocalClusterNameBytes

        public com.google.protobuf.ByteString getLocalClusterNameBytes()
         Name of the local cluster (i.e., the cluster that owns the Envoy running
         this configuration). In order to enable :ref:`zone aware routing
         <arch_overview_load_balancing_zone_aware_routing>` this option must be set.
         If ``local_cluster_name`` is defined then :ref:`clusters
         <envoy_v3_api_msg_config.cluster.v3.Cluster>` must be defined in the :ref:`Bootstrap
         static cluster resources
         <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.StaticResources.clusters>`. This is unrelated to
         the :option:`--service-cluster` option which does not `affect zone aware
         routing <https://github.com/envoyproxy/envoy/issues/774>`_.
         
        string local_cluster_name = 1;
        Specified by:
        getLocalClusterNameBytes in interface ClusterManagerOrBuilder
        Returns:
        The bytes for localClusterName.
      • setLocalClusterName

        public ClusterManager.Builder setLocalClusterName​(java.lang.String value)
         Name of the local cluster (i.e., the cluster that owns the Envoy running
         this configuration). In order to enable :ref:`zone aware routing
         <arch_overview_load_balancing_zone_aware_routing>` this option must be set.
         If ``local_cluster_name`` is defined then :ref:`clusters
         <envoy_v3_api_msg_config.cluster.v3.Cluster>` must be defined in the :ref:`Bootstrap
         static cluster resources
         <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.StaticResources.clusters>`. This is unrelated to
         the :option:`--service-cluster` option which does not `affect zone aware
         routing <https://github.com/envoyproxy/envoy/issues/774>`_.
         
        string local_cluster_name = 1;
        Parameters:
        value - The localClusterName to set.
        Returns:
        This builder for chaining.
      • clearLocalClusterName

        public ClusterManager.Builder clearLocalClusterName()
         Name of the local cluster (i.e., the cluster that owns the Envoy running
         this configuration). In order to enable :ref:`zone aware routing
         <arch_overview_load_balancing_zone_aware_routing>` this option must be set.
         If ``local_cluster_name`` is defined then :ref:`clusters
         <envoy_v3_api_msg_config.cluster.v3.Cluster>` must be defined in the :ref:`Bootstrap
         static cluster resources
         <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.StaticResources.clusters>`. This is unrelated to
         the :option:`--service-cluster` option which does not `affect zone aware
         routing <https://github.com/envoyproxy/envoy/issues/774>`_.
         
        string local_cluster_name = 1;
        Returns:
        This builder for chaining.
      • setLocalClusterNameBytes

        public ClusterManager.Builder setLocalClusterNameBytes​(com.google.protobuf.ByteString value)
         Name of the local cluster (i.e., the cluster that owns the Envoy running
         this configuration). In order to enable :ref:`zone aware routing
         <arch_overview_load_balancing_zone_aware_routing>` this option must be set.
         If ``local_cluster_name`` is defined then :ref:`clusters
         <envoy_v3_api_msg_config.cluster.v3.Cluster>` must be defined in the :ref:`Bootstrap
         static cluster resources
         <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.StaticResources.clusters>`. This is unrelated to
         the :option:`--service-cluster` option which does not `affect zone aware
         routing <https://github.com/envoyproxy/envoy/issues/774>`_.
         
        string local_cluster_name = 1;
        Parameters:
        value - The bytes for localClusterName to set.
        Returns:
        This builder for chaining.
      • hasOutlierDetection

        public boolean hasOutlierDetection()
         Optional global configuration for outlier detection.
         
        .envoy.config.bootstrap.v3.ClusterManager.OutlierDetection outlier_detection = 2;
        Specified by:
        hasOutlierDetection in interface ClusterManagerOrBuilder
        Returns:
        Whether the outlierDetection field is set.
      • clearOutlierDetection

        public ClusterManager.Builder clearOutlierDetection()
         Optional global configuration for outlier detection.
         
        .envoy.config.bootstrap.v3.ClusterManager.OutlierDetection outlier_detection = 2;
      • getOutlierDetectionBuilder

        public ClusterManager.OutlierDetection.Builder getOutlierDetectionBuilder()
         Optional global configuration for outlier detection.
         
        .envoy.config.bootstrap.v3.ClusterManager.OutlierDetection outlier_detection = 2;
      • hasUpstreamBindConfig

        public boolean hasUpstreamBindConfig()
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
        Specified by:
        hasUpstreamBindConfig in interface ClusterManagerOrBuilder
        Returns:
        Whether the upstreamBindConfig field is set.
      • getUpstreamBindConfig

        public BindConfig getUpstreamBindConfig()
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
        Specified by:
        getUpstreamBindConfig in interface ClusterManagerOrBuilder
        Returns:
        The upstreamBindConfig.
      • setUpstreamBindConfig

        public ClusterManager.Builder setUpstreamBindConfig​(BindConfig value)
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
      • setUpstreamBindConfig

        public ClusterManager.Builder setUpstreamBindConfig​(BindConfig.Builder builderForValue)
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
      • mergeUpstreamBindConfig

        public ClusterManager.Builder mergeUpstreamBindConfig​(BindConfig value)
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
      • clearUpstreamBindConfig

        public ClusterManager.Builder clearUpstreamBindConfig()
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
      • getUpstreamBindConfigBuilder

        public BindConfig.Builder getUpstreamBindConfigBuilder()
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
      • getUpstreamBindConfigOrBuilder

        public BindConfigOrBuilder getUpstreamBindConfigOrBuilder()
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
        Specified by:
        getUpstreamBindConfigOrBuilder in interface ClusterManagerOrBuilder
      • getUpstreamBindConfigFieldBuilder

        private com.google.protobuf.SingleFieldBuilder<BindConfig,​BindConfig.Builder,​BindConfigOrBuilder> getUpstreamBindConfigFieldBuilder()
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
      • hasLoadStatsConfig

        public boolean hasLoadStatsConfig()
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
        Specified by:
        hasLoadStatsConfig in interface ClusterManagerOrBuilder
        Returns:
        Whether the loadStatsConfig field is set.
      • getLoadStatsConfig

        public ApiConfigSource getLoadStatsConfig()
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
        Specified by:
        getLoadStatsConfig in interface ClusterManagerOrBuilder
        Returns:
        The loadStatsConfig.
      • setLoadStatsConfig

        public ClusterManager.Builder setLoadStatsConfig​(ApiConfigSource value)
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
      • setLoadStatsConfig

        public ClusterManager.Builder setLoadStatsConfig​(ApiConfigSource.Builder builderForValue)
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
      • mergeLoadStatsConfig

        public ClusterManager.Builder mergeLoadStatsConfig​(ApiConfigSource value)
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
      • clearLoadStatsConfig

        public ClusterManager.Builder clearLoadStatsConfig()
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
      • getLoadStatsConfigBuilder

        public ApiConfigSource.Builder getLoadStatsConfigBuilder()
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
      • getLoadStatsConfigOrBuilder

        public ApiConfigSourceOrBuilder getLoadStatsConfigOrBuilder()
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
        Specified by:
        getLoadStatsConfigOrBuilder in interface ClusterManagerOrBuilder
      • getLoadStatsConfigFieldBuilder

        private com.google.protobuf.SingleFieldBuilder<ApiConfigSource,​ApiConfigSource.Builder,​ApiConfigSourceOrBuilder> getLoadStatsConfigFieldBuilder()
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
      • getEnableDeferredClusterCreation

        public boolean getEnableDeferredClusterCreation()
         Whether the ClusterManager will create clusters on the worker threads
         inline during requests. This will save memory and CPU cycles in cases where
         there are lots of inactive clusters and > 1 worker thread.
         
        bool enable_deferred_cluster_creation = 5;
        Specified by:
        getEnableDeferredClusterCreation in interface ClusterManagerOrBuilder
        Returns:
        The enableDeferredClusterCreation.
      • setEnableDeferredClusterCreation

        public ClusterManager.Builder setEnableDeferredClusterCreation​(boolean value)
         Whether the ClusterManager will create clusters on the worker threads
         inline during requests. This will save memory and CPU cycles in cases where
         there are lots of inactive clusters and > 1 worker thread.
         
        bool enable_deferred_cluster_creation = 5;
        Parameters:
        value - The enableDeferredClusterCreation to set.
        Returns:
        This builder for chaining.
      • clearEnableDeferredClusterCreation

        public ClusterManager.Builder clearEnableDeferredClusterCreation()
         Whether the ClusterManager will create clusters on the worker threads
         inline during requests. This will save memory and CPU cycles in cases where
         there are lots of inactive clusters and > 1 worker thread.
         
        bool enable_deferred_cluster_creation = 5;
        Returns:
        This builder for chaining.