Home / Class/ WriteBufferWaterMark Class — netty Architecture

WriteBufferWaterMark Class — netty Architecture

Architecture documentation for the WriteBufferWaterMark class in WriteBufferWaterMark.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  6ec0bf43_cde1_21d6_2e57_52a621b939ce["WriteBufferWaterMark"]
  795c547c_ee51_285d_06a7_16242894c112["WriteBufferWaterMark.java"]
  6ec0bf43_cde1_21d6_2e57_52a621b939ce -->|defined in| 795c547c_ee51_285d_06a7_16242894c112
  4fd402db_8afc_9e9d_db1b_4307fe6c6039["WriteBufferWaterMark()"]
  6ec0bf43_cde1_21d6_2e57_52a621b939ce -->|method| 4fd402db_8afc_9e9d_db1b_4307fe6c6039
  99285dc9_05fa_b848_4e8e_b5c17d127cb8["low()"]
  6ec0bf43_cde1_21d6_2e57_52a621b939ce -->|method| 99285dc9_05fa_b848_4e8e_b5c17d127cb8
  2882b724_1cbc_cf9c_3c42_a7dbca366f46["high()"]
  6ec0bf43_cde1_21d6_2e57_52a621b939ce -->|method| 2882b724_1cbc_cf9c_3c42_a7dbca366f46
  f444f39c_ee2f_1675_8fca_76407dc87e59["String()"]
  6ec0bf43_cde1_21d6_2e57_52a621b939ce -->|method| f444f39c_ee2f_1675_8fca_76407dc87e59

Relationship Graph

Source Code

transport/src/main/java/io/netty/channel/WriteBufferWaterMark.java lines 36–99

public final class WriteBufferWaterMark {

    private static final int DEFAULT_LOW_WATER_MARK = 32 * 1024;
    private static final int DEFAULT_HIGH_WATER_MARK = 64 * 1024;

    public static final WriteBufferWaterMark DEFAULT =
            new WriteBufferWaterMark(DEFAULT_LOW_WATER_MARK, DEFAULT_HIGH_WATER_MARK, false);

    private final int low;
    private final int high;

    /**
     * Create a new instance.
     *
     * @param low low water mark for write buffer.
     * @param high high water mark for write buffer
     */
    public WriteBufferWaterMark(int low, int high) {
        this(low, high, true);
    }

    /**
     * This constructor is needed to keep backward-compatibility.
     */
    WriteBufferWaterMark(int low, int high, boolean validate) {
        if (validate) {
            checkPositiveOrZero(low, "low");
            if (high < low) {
                throw new IllegalArgumentException(
                        "write buffer's high water mark cannot be less than " +
                                " low water mark (" + low + "): " +
                                high);
            }
        }
        this.low = low;
        this.high = high;
    }

    /**
     * Returns the low water mark for the write buffer.
     */
    public int low() {
        return low;
    }

    /**
     * Returns the high water mark for the write buffer.
     */
    public int high() {
        return high;
    }

    @Override
    public String toString() {
        StringBuilder builder = new StringBuilder(55)
            .append("WriteBufferWaterMark(low: ")
            .append(low)
            .append(", high: ")
            .append(high)
            .append(")");
        return builder.toString();
    }

}

Frequently Asked Questions

What is the WriteBufferWaterMark class?
WriteBufferWaterMark is a class in the netty codebase, defined in transport/src/main/java/io/netty/channel/WriteBufferWaterMark.java.
Where is WriteBufferWaterMark defined?
WriteBufferWaterMark is defined in transport/src/main/java/io/netty/channel/WriteBufferWaterMark.java at line 36.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free