Class ReadThrottleFilterBuilder


  • public class ReadThrottleFilterBuilder
    extends java.lang.Object
    This filter will automatically disable reads on an IoSession once the data batched for that session in the ExecutorFilter reaches a defined threshold (the default is 1 megabytes). It accomplishes this by being in the filter chain before and after the ExecutorFilter. It is possible to subvert the behavior of this filter by adding filters immediately after the ExecutorFilter after adding this filter. Thus, it is recommended to add this filter towards the end of your filter chain construction, if you need to ensure that other filters need to be right after the ExecutorFilter

    Usage:

    
     DefaultFilterChainBuilder builder = ...
     ReadThrottleFilterBuilder filter = new ReadThrottleFilterBuilder();
     filter.attach( builder );
     
    or
    
     IoFilterChain chain = ...
     ReadThrottleFilterBuilder filter = new ReadThrottleFilterBuilder();
     filter.attach( chain );
     
    • Field Detail

      • COUNTER

        public static final java.lang.String COUNTER
      • SUSPENDED_READS

        public static final java.lang.String SUSPENDED_READS
    • Constructor Detail

      • ReadThrottleFilterBuilder

        public ReadThrottleFilterBuilder()
    • Method Detail

      • setMaximumConnectionBufferSize

        public void setMaximumConnectionBufferSize​(int maximumConnectionBufferSize)
        Set the maximum amount of data to buffer in the ThreadPoolFilter prior to disabling reads. Changing the value will only take effect when new data is received for a connection, including existing connections. Default value is 1 megabytes.
        Parameters:
        maximumConnectionBufferSize - New buffer size. Must be > 0
      • attach

        public void attach​(IoFilterChain chain)
        Attach this filter to the specified filter chain. It will search for the ThreadPoolFilter, and attach itself before and after that filter.
        Parameters:
        chain - IoFilterChain to attach self to.