Class BandwidthLimit.Builder

  • All Implemented Interfaces:
    com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, BandwidthLimitOrBuilder, Cloneable
    Enclosing class:
    BandwidthLimit

    public static final class BandwidthLimit.Builder
    extends com.google.protobuf.GeneratedMessageV3.Builder<BandwidthLimit.Builder>
    implements BandwidthLimitOrBuilder
     [#next-free-field: 8]
     
    Protobuf type envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit
    • Method Detail

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

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

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

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

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

        public BandwidthLimit.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<BandwidthLimit.Builder>
      • setField

        public BandwidthLimit.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<BandwidthLimit.Builder>
      • clearField

        public BandwidthLimit.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<BandwidthLimit.Builder>
      • clearOneof

        public BandwidthLimit.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<BandwidthLimit.Builder>
      • setRepeatedField

        public BandwidthLimit.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<BandwidthLimit.Builder>
      • addRepeatedField

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

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

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

        public BandwidthLimit.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<BandwidthLimit.Builder>
        Throws:
        IOException
      • getStatPrefix

        public String getStatPrefix()
         The human readable prefix to use when emitting stats.
         
        string stat_prefix = 1 [(.validate.rules) = { ... }
        Specified by:
        getStatPrefix in interface BandwidthLimitOrBuilder
        Returns:
        The statPrefix.
      • getStatPrefixBytes

        public com.google.protobuf.ByteString getStatPrefixBytes()
         The human readable prefix to use when emitting stats.
         
        string stat_prefix = 1 [(.validate.rules) = { ... }
        Specified by:
        getStatPrefixBytes in interface BandwidthLimitOrBuilder
        Returns:
        The bytes for statPrefix.
      • setStatPrefix

        public BandwidthLimit.Builder setStatPrefix​(String value)
         The human readable prefix to use when emitting stats.
         
        string stat_prefix = 1 [(.validate.rules) = { ... }
        Parameters:
        value - The statPrefix to set.
        Returns:
        This builder for chaining.
      • clearStatPrefix

        public BandwidthLimit.Builder clearStatPrefix()
         The human readable prefix to use when emitting stats.
         
        string stat_prefix = 1 [(.validate.rules) = { ... }
        Returns:
        This builder for chaining.
      • setStatPrefixBytes

        public BandwidthLimit.Builder setStatPrefixBytes​(com.google.protobuf.ByteString value)
         The human readable prefix to use when emitting stats.
         
        string stat_prefix = 1 [(.validate.rules) = { ... }
        Parameters:
        value - The bytes for statPrefix to set.
        Returns:
        This builder for chaining.
      • getEnableModeValue

        public int getEnableModeValue()
         The enable mode for the bandwidth limit filter.
         Default is Disabled.
         
        .envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode enable_mode = 2 [(.validate.rules) = { ... }
        Specified by:
        getEnableModeValue in interface BandwidthLimitOrBuilder
        Returns:
        The enum numeric value on the wire for enableMode.
      • setEnableModeValue

        public BandwidthLimit.Builder setEnableModeValue​(int value)
         The enable mode for the bandwidth limit filter.
         Default is Disabled.
         
        .envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode enable_mode = 2 [(.validate.rules) = { ... }
        Parameters:
        value - The enum numeric value on the wire for enableMode to set.
        Returns:
        This builder for chaining.
      • getEnableMode

        public BandwidthLimit.EnableMode getEnableMode()
         The enable mode for the bandwidth limit filter.
         Default is Disabled.
         
        .envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode enable_mode = 2 [(.validate.rules) = { ... }
        Specified by:
        getEnableMode in interface BandwidthLimitOrBuilder
        Returns:
        The enableMode.
      • setEnableMode

        public BandwidthLimit.Builder setEnableMode​(BandwidthLimit.EnableMode value)
         The enable mode for the bandwidth limit filter.
         Default is Disabled.
         
        .envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode enable_mode = 2 [(.validate.rules) = { ... }
        Parameters:
        value - The enableMode to set.
        Returns:
        This builder for chaining.
      • clearEnableMode

        public BandwidthLimit.Builder clearEnableMode()
         The enable mode for the bandwidth limit filter.
         Default is Disabled.
         
        .envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode enable_mode = 2 [(.validate.rules) = { ... }
        Returns:
        This builder for chaining.
      • hasLimitKbps

        public boolean hasLimitKbps()
         The limit supplied in KiB/s.
         .. note::
           It's fine for the limit to be unset for the global configuration since the bandwidth limit
           can be applied at a the virtual host or route level. Thus, the limit must be set for the
           per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the limit becomes unique to that route.
         
        .google.protobuf.UInt64Value limit_kbps = 3 [(.validate.rules) = { ... }
        Specified by:
        hasLimitKbps in interface BandwidthLimitOrBuilder
        Returns:
        Whether the limitKbps field is set.
      • getLimitKbps

        public com.google.protobuf.UInt64Value getLimitKbps()
         The limit supplied in KiB/s.
         .. note::
           It's fine for the limit to be unset for the global configuration since the bandwidth limit
           can be applied at a the virtual host or route level. Thus, the limit must be set for the
           per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the limit becomes unique to that route.
         
        .google.protobuf.UInt64Value limit_kbps = 3 [(.validate.rules) = { ... }
        Specified by:
        getLimitKbps in interface BandwidthLimitOrBuilder
        Returns:
        The limitKbps.
      • setLimitKbps

        public BandwidthLimit.Builder setLimitKbps​(com.google.protobuf.UInt64Value value)
         The limit supplied in KiB/s.
         .. note::
           It's fine for the limit to be unset for the global configuration since the bandwidth limit
           can be applied at a the virtual host or route level. Thus, the limit must be set for the
           per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the limit becomes unique to that route.
         
        .google.protobuf.UInt64Value limit_kbps = 3 [(.validate.rules) = { ... }
      • setLimitKbps

        public BandwidthLimit.Builder setLimitKbps​(com.google.protobuf.UInt64Value.Builder builderForValue)
         The limit supplied in KiB/s.
         .. note::
           It's fine for the limit to be unset for the global configuration since the bandwidth limit
           can be applied at a the virtual host or route level. Thus, the limit must be set for the
           per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the limit becomes unique to that route.
         
        .google.protobuf.UInt64Value limit_kbps = 3 [(.validate.rules) = { ... }
      • mergeLimitKbps

        public BandwidthLimit.Builder mergeLimitKbps​(com.google.protobuf.UInt64Value value)
         The limit supplied in KiB/s.
         .. note::
           It's fine for the limit to be unset for the global configuration since the bandwidth limit
           can be applied at a the virtual host or route level. Thus, the limit must be set for the
           per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the limit becomes unique to that route.
         
        .google.protobuf.UInt64Value limit_kbps = 3 [(.validate.rules) = { ... }
      • clearLimitKbps

        public BandwidthLimit.Builder clearLimitKbps()
         The limit supplied in KiB/s.
         .. note::
           It's fine for the limit to be unset for the global configuration since the bandwidth limit
           can be applied at a the virtual host or route level. Thus, the limit must be set for the
           per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the limit becomes unique to that route.
         
        .google.protobuf.UInt64Value limit_kbps = 3 [(.validate.rules) = { ... }
      • getLimitKbpsBuilder

        public com.google.protobuf.UInt64Value.Builder getLimitKbpsBuilder()
         The limit supplied in KiB/s.
         .. note::
           It's fine for the limit to be unset for the global configuration since the bandwidth limit
           can be applied at a the virtual host or route level. Thus, the limit must be set for the
           per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the limit becomes unique to that route.
         
        .google.protobuf.UInt64Value limit_kbps = 3 [(.validate.rules) = { ... }
      • getLimitKbpsOrBuilder

        public com.google.protobuf.UInt64ValueOrBuilder getLimitKbpsOrBuilder()
         The limit supplied in KiB/s.
         .. note::
           It's fine for the limit to be unset for the global configuration since the bandwidth limit
           can be applied at a the virtual host or route level. Thus, the limit must be set for the
           per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the limit becomes unique to that route.
         
        .google.protobuf.UInt64Value limit_kbps = 3 [(.validate.rules) = { ... }
        Specified by:
        getLimitKbpsOrBuilder in interface BandwidthLimitOrBuilder
      • hasFillInterval

        public boolean hasFillInterval()
         Optional Fill interval in milliseconds for the token refills. Defaults to 50ms.
         It must be at least 20ms to avoid too aggressive refills.
         
        .google.protobuf.Duration fill_interval = 4 [(.validate.rules) = { ... }
        Specified by:
        hasFillInterval in interface BandwidthLimitOrBuilder
        Returns:
        Whether the fillInterval field is set.
      • getFillInterval

        public com.google.protobuf.Duration getFillInterval()
         Optional Fill interval in milliseconds for the token refills. Defaults to 50ms.
         It must be at least 20ms to avoid too aggressive refills.
         
        .google.protobuf.Duration fill_interval = 4 [(.validate.rules) = { ... }
        Specified by:
        getFillInterval in interface BandwidthLimitOrBuilder
        Returns:
        The fillInterval.
      • setFillInterval

        public BandwidthLimit.Builder setFillInterval​(com.google.protobuf.Duration value)
         Optional Fill interval in milliseconds for the token refills. Defaults to 50ms.
         It must be at least 20ms to avoid too aggressive refills.
         
        .google.protobuf.Duration fill_interval = 4 [(.validate.rules) = { ... }
      • setFillInterval

        public BandwidthLimit.Builder setFillInterval​(com.google.protobuf.Duration.Builder builderForValue)
         Optional Fill interval in milliseconds for the token refills. Defaults to 50ms.
         It must be at least 20ms to avoid too aggressive refills.
         
        .google.protobuf.Duration fill_interval = 4 [(.validate.rules) = { ... }
      • mergeFillInterval

        public BandwidthLimit.Builder mergeFillInterval​(com.google.protobuf.Duration value)
         Optional Fill interval in milliseconds for the token refills. Defaults to 50ms.
         It must be at least 20ms to avoid too aggressive refills.
         
        .google.protobuf.Duration fill_interval = 4 [(.validate.rules) = { ... }
      • clearFillInterval

        public BandwidthLimit.Builder clearFillInterval()
         Optional Fill interval in milliseconds for the token refills. Defaults to 50ms.
         It must be at least 20ms to avoid too aggressive refills.
         
        .google.protobuf.Duration fill_interval = 4 [(.validate.rules) = { ... }
      • getFillIntervalBuilder

        public com.google.protobuf.Duration.Builder getFillIntervalBuilder()
         Optional Fill interval in milliseconds for the token refills. Defaults to 50ms.
         It must be at least 20ms to avoid too aggressive refills.
         
        .google.protobuf.Duration fill_interval = 4 [(.validate.rules) = { ... }
      • getFillIntervalOrBuilder

        public com.google.protobuf.DurationOrBuilder getFillIntervalOrBuilder()
         Optional Fill interval in milliseconds for the token refills. Defaults to 50ms.
         It must be at least 20ms to avoid too aggressive refills.
         
        .google.protobuf.Duration fill_interval = 4 [(.validate.rules) = { ... }
        Specified by:
        getFillIntervalOrBuilder in interface BandwidthLimitOrBuilder
      • hasRuntimeEnabled

        public boolean hasRuntimeEnabled()
         Runtime flag that controls whether the filter is enabled or not. If not specified, defaults
         to enabled.
         
        .envoy.config.core.v3.RuntimeFeatureFlag runtime_enabled = 5;
        Specified by:
        hasRuntimeEnabled in interface BandwidthLimitOrBuilder
        Returns:
        Whether the runtimeEnabled field is set.
      • getRuntimeEnabled

        public RuntimeFeatureFlag getRuntimeEnabled()
         Runtime flag that controls whether the filter is enabled or not. If not specified, defaults
         to enabled.
         
        .envoy.config.core.v3.RuntimeFeatureFlag runtime_enabled = 5;
        Specified by:
        getRuntimeEnabled in interface BandwidthLimitOrBuilder
        Returns:
        The runtimeEnabled.
      • setRuntimeEnabled

        public BandwidthLimit.Builder setRuntimeEnabled​(RuntimeFeatureFlag value)
         Runtime flag that controls whether the filter is enabled or not. If not specified, defaults
         to enabled.
         
        .envoy.config.core.v3.RuntimeFeatureFlag runtime_enabled = 5;
      • setRuntimeEnabled

        public BandwidthLimit.Builder setRuntimeEnabled​(RuntimeFeatureFlag.Builder builderForValue)
         Runtime flag that controls whether the filter is enabled or not. If not specified, defaults
         to enabled.
         
        .envoy.config.core.v3.RuntimeFeatureFlag runtime_enabled = 5;
      • mergeRuntimeEnabled

        public BandwidthLimit.Builder mergeRuntimeEnabled​(RuntimeFeatureFlag value)
         Runtime flag that controls whether the filter is enabled or not. If not specified, defaults
         to enabled.
         
        .envoy.config.core.v3.RuntimeFeatureFlag runtime_enabled = 5;
      • clearRuntimeEnabled

        public BandwidthLimit.Builder clearRuntimeEnabled()
         Runtime flag that controls whether the filter is enabled or not. If not specified, defaults
         to enabled.
         
        .envoy.config.core.v3.RuntimeFeatureFlag runtime_enabled = 5;
      • getRuntimeEnabledBuilder

        public RuntimeFeatureFlag.Builder getRuntimeEnabledBuilder()
         Runtime flag that controls whether the filter is enabled or not. If not specified, defaults
         to enabled.
         
        .envoy.config.core.v3.RuntimeFeatureFlag runtime_enabled = 5;
      • getEnableResponseTrailers

        public boolean getEnableResponseTrailers()
         Enable response trailers.
         .. note::
           * If set true, the response trailers ``bandwidth-request-delay-ms`` and ``bandwidth-response-delay-ms`` will be added, prefixed by ``response_trailer_prefix``.
           * bandwidth-request-delay-ms: delay time in milliseconds it took for the request stream transfer.
           * bandwidth-response-delay-ms: delay time in milliseconds it took for the response stream transfer.
           * If :ref:`enable_mode <envoy_v3_api_field_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.enable_mode>` is ``DISABLED`` or ``REQUEST``, the trailers will not be set.
           * If both the request and response delay time is 0, the trailers will not be set.
         
        bool enable_response_trailers = 6;
        Specified by:
        getEnableResponseTrailers in interface BandwidthLimitOrBuilder
        Returns:
        The enableResponseTrailers.
      • setEnableResponseTrailers

        public BandwidthLimit.Builder setEnableResponseTrailers​(boolean value)
         Enable response trailers.
         .. note::
           * If set true, the response trailers ``bandwidth-request-delay-ms`` and ``bandwidth-response-delay-ms`` will be added, prefixed by ``response_trailer_prefix``.
           * bandwidth-request-delay-ms: delay time in milliseconds it took for the request stream transfer.
           * bandwidth-response-delay-ms: delay time in milliseconds it took for the response stream transfer.
           * If :ref:`enable_mode <envoy_v3_api_field_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.enable_mode>` is ``DISABLED`` or ``REQUEST``, the trailers will not be set.
           * If both the request and response delay time is 0, the trailers will not be set.
         
        bool enable_response_trailers = 6;
        Parameters:
        value - The enableResponseTrailers to set.
        Returns:
        This builder for chaining.
      • clearEnableResponseTrailers

        public BandwidthLimit.Builder clearEnableResponseTrailers()
         Enable response trailers.
         .. note::
           * If set true, the response trailers ``bandwidth-request-delay-ms`` and ``bandwidth-response-delay-ms`` will be added, prefixed by ``response_trailer_prefix``.
           * bandwidth-request-delay-ms: delay time in milliseconds it took for the request stream transfer.
           * bandwidth-response-delay-ms: delay time in milliseconds it took for the response stream transfer.
           * If :ref:`enable_mode <envoy_v3_api_field_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.enable_mode>` is ``DISABLED`` or ``REQUEST``, the trailers will not be set.
           * If both the request and response delay time is 0, the trailers will not be set.
         
        bool enable_response_trailers = 6;
        Returns:
        This builder for chaining.
      • getResponseTrailerPrefix

        public String getResponseTrailerPrefix()
         Optional The prefix for the response trailers.
         
        string response_trailer_prefix = 7 [(.validate.rules) = { ... }
        Specified by:
        getResponseTrailerPrefix in interface BandwidthLimitOrBuilder
        Returns:
        The responseTrailerPrefix.
      • getResponseTrailerPrefixBytes

        public com.google.protobuf.ByteString getResponseTrailerPrefixBytes()
         Optional The prefix for the response trailers.
         
        string response_trailer_prefix = 7 [(.validate.rules) = { ... }
        Specified by:
        getResponseTrailerPrefixBytes in interface BandwidthLimitOrBuilder
        Returns:
        The bytes for responseTrailerPrefix.
      • setResponseTrailerPrefix

        public BandwidthLimit.Builder setResponseTrailerPrefix​(String value)
         Optional The prefix for the response trailers.
         
        string response_trailer_prefix = 7 [(.validate.rules) = { ... }
        Parameters:
        value - The responseTrailerPrefix to set.
        Returns:
        This builder for chaining.
      • clearResponseTrailerPrefix

        public BandwidthLimit.Builder clearResponseTrailerPrefix()
         Optional The prefix for the response trailers.
         
        string response_trailer_prefix = 7 [(.validate.rules) = { ... }
        Returns:
        This builder for chaining.
      • setResponseTrailerPrefixBytes

        public BandwidthLimit.Builder setResponseTrailerPrefixBytes​(com.google.protobuf.ByteString value)
         Optional The prefix for the response trailers.
         
        string response_trailer_prefix = 7 [(.validate.rules) = { ... }
        Parameters:
        value - The bytes for responseTrailerPrefix to set.
        Returns:
        This builder for chaining.
      • setUnknownFields

        public final BandwidthLimit.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<BandwidthLimit.Builder>
      • mergeUnknownFields

        public final BandwidthLimit.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<BandwidthLimit.Builder>