Home / Class/ QuicPathEvent Class — netty Architecture

QuicPathEvent Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  3372c3a8_5ea4_3c5a_a681_67c22083999b["QuicPathEvent"]
  a95b1e15_6984_fd51_0c08_95910b65bd04["QuicPathEvent.java"]
  3372c3a8_5ea4_3c5a_a681_67c22083999b -->|defined in| a95b1e15_6984_fd51_0c08_95910b65bd04
  855c8df6_d7cd_255c_d7f8_1f0efea154d4["QuicPathEvent()"]
  3372c3a8_5ea4_3c5a_a681_67c22083999b -->|method| 855c8df6_d7cd_255c_d7f8_1f0efea154d4
  72ec1b45_de2a_561d_6bad_364d9464dbb7["InetSocketAddress()"]
  3372c3a8_5ea4_3c5a_a681_67c22083999b -->|method| 72ec1b45_de2a_561d_6bad_364d9464dbb7
  ce20adc3_ae4c_0d60_d1d3_84bbac0695c8["String()"]
  3372c3a8_5ea4_3c5a_a681_67c22083999b -->|method| ce20adc3_ae4c_0d60_d1d3_84bbac0695c8
  28c45647_abb2_b2fb_f928_e4b07a0b896a["equals()"]
  3372c3a8_5ea4_3c5a_a681_67c22083999b -->|method| 28c45647_abb2_b2fb_f928_e4b07a0b896a
  8feb90ec_7469_e4e6_1e9d_f95396790acc["hashCode()"]
  3372c3a8_5ea4_3c5a_a681_67c22083999b -->|method| 8feb90ec_7469_e4e6_1e9d_f95396790acc

Relationship Graph

Source Code

codec-classes-quic/src/main/java/io/netty/handler/codec/quic/QuicPathEvent.java lines 26–302

public abstract class QuicPathEvent implements QuicEvent {

    private final InetSocketAddress local;
    private final InetSocketAddress remote;

    QuicPathEvent(InetSocketAddress local, InetSocketAddress remote) {
        this.local = requireNonNull(local, "local");
        this.remote = requireNonNull(remote, "remote");
    }

    /**
     * The local address of the network path.
     *
     * @return  local
     */
    public InetSocketAddress local() {
        return local;
    }

    /**
     * The remote address of the network path.
     *
     * @return  local
     */
    public InetSocketAddress remote() {
        return remote;
    }

    @Override
    public String toString() {
        return "QuicPathEvent{" +
                "local=" + local +
                ", remote=" + remote +
                '}';
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }

        QuicPathEvent that = (QuicPathEvent) o;
        if (!Objects.equals(local, that.local)) {
            return false;
        }
        return Objects.equals(remote, that.remote);
    }

    @Override
    public int hashCode() {
        int result = local != null ? local.hashCode() : 0;
        result = 31 * result + (remote != null ? remote.hashCode() : 0);
        return result;
    }

    public static final class New extends QuicPathEvent {
        /**
         * A new network path (local address, remote address) has been seen on a received packet.
         * Note that this event is only triggered for servers, as the client is responsible from initiating new paths.
         * The application may then probe this new path, if desired.
         *
         * @param local     local address.
         * @param remote    remote address.
         */
        public New(InetSocketAddress local, InetSocketAddress remote) {
            super(local, remote);
        }

        @Override
        public String toString() {
            return "QuicPathEvent.New{" +
                    "local=" + local() +
                    ", remote=" + remote() +
                    '}';
        }
    }

Frequently Asked Questions

What is the QuicPathEvent class?
QuicPathEvent is a class in the netty codebase, defined in codec-classes-quic/src/main/java/io/netty/handler/codec/quic/QuicPathEvent.java.
Where is QuicPathEvent defined?
QuicPathEvent is defined in codec-classes-quic/src/main/java/io/netty/handler/codec/quic/QuicPathEvent.java at line 26.

Analyze Your Own Codebase

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

Try Supermodel Free