Home / Class/ SegmentedDatagramPacket Class — netty Architecture

SegmentedDatagramPacket Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  59e7ab34_b7b6_b908_7ef8_24bb30009559["SegmentedDatagramPacket"]
  3dc41a74_f6b7_5aaa_c5e8_6a652b4731f3["SegmentedDatagramPacket.java"]
  59e7ab34_b7b6_b908_7ef8_24bb30009559 -->|defined in| 3dc41a74_f6b7_5aaa_c5e8_6a652b4731f3
  a190770c_da58_f522_7bd3_a3f803da53ca["SegmentedDatagramPacket()"]
  59e7ab34_b7b6_b908_7ef8_24bb30009559 -->|method| a190770c_da58_f522_7bd3_a3f803da53ca
  f656bd0c_f716_f06f_16a0_e2c1b422ce92["segmentSize()"]
  59e7ab34_b7b6_b908_7ef8_24bb30009559 -->|method| f656bd0c_f716_f06f_16a0_e2c1b422ce92

Relationship Graph

Source Code

transport-native-unix-common/src/main/java/io/netty/channel/unix/SegmentedDatagramPacket.java lines 28–109

public class SegmentedDatagramPacket extends DatagramPacket {

    private final int segmentSize;

    /**
     * Create a new instance.
     *
     * @param data          the {@link ByteBuf} which must be continguous.
     * @param segmentSize   the segment size.
     * @param recipient     the recipient.
     */
    public SegmentedDatagramPacket(ByteBuf data, int segmentSize, InetSocketAddress recipient) {
        super(data, recipient);
        this.segmentSize = ObjectUtil.checkPositive(segmentSize, "segmentSize");
    }

    /**
     * Create a new instance.
     *
     * @param data          the {@link ByteBuf} which must be continguous.
     * @param segmentSize   the segment size.
     * @param recipient     the recipient.
     */
    public SegmentedDatagramPacket(ByteBuf data, int segmentSize,
                                   InetSocketAddress recipient, InetSocketAddress sender) {
        super(data, recipient, sender);
        this.segmentSize = ObjectUtil.checkPositive(segmentSize, "segmentSize");
    }

    /**
     * Return the size of each segment (the last segment can be smaller).
     *
     * @return size of segments.
     */
    public int segmentSize() {
        return segmentSize;
    }

    @Override
    public SegmentedDatagramPacket copy() {
        return new SegmentedDatagramPacket(content().copy(), segmentSize, recipient(), sender());
    }

    @Override
    public SegmentedDatagramPacket duplicate() {
        return new SegmentedDatagramPacket(content().duplicate(), segmentSize, recipient(), sender());
    }

    @Override
    public SegmentedDatagramPacket retainedDuplicate() {
        return new SegmentedDatagramPacket(content().retainedDuplicate(), segmentSize, recipient(), sender());
    }

    @Override
    public SegmentedDatagramPacket replace(ByteBuf content) {
        return new SegmentedDatagramPacket(content, segmentSize, recipient(), sender());
    }

    @Override
    public SegmentedDatagramPacket retain() {
        super.retain();
        return this;
    }

    @Override
    public SegmentedDatagramPacket retain(int increment) {
        super.retain(increment);
        return this;
    }

    @Override
    public SegmentedDatagramPacket touch() {
        super.touch();
        return this;
    }

    @Override
    public SegmentedDatagramPacket touch(Object hint) {
        super.touch(hint);
        return this;
    }

Frequently Asked Questions

What is the SegmentedDatagramPacket class?
SegmentedDatagramPacket is a class in the netty codebase, defined in transport-native-unix-common/src/main/java/io/netty/channel/unix/SegmentedDatagramPacket.java.
Where is SegmentedDatagramPacket defined?
SegmentedDatagramPacket is defined in transport-native-unix-common/src/main/java/io/netty/channel/unix/SegmentedDatagramPacket.java at line 28.

Analyze Your Own Codebase

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

Try Supermodel Free