Package io.github.mahmoudimus.quic.frame
Record Class Frame.AckFrequency
java.lang.Object
java.lang.Record
io.github.mahmoudimus.quic.frame.Frame.AckFrequency
- Record Components:
sequenceNumber- the sequence number, which orders ACK_FREQUENCY framesackElicitingThreshold- how many ack-eliciting packets may arrive before an ACKrequestMaxAckDelay- the requested maximum ACK delay, in microsecondsreorderingThreshold- how much reordering triggers an immediate ACK
- All Implemented Interfaces:
Frame
- Enclosing interface:
Frame
public static record Frame.AckFrequency(long sequenceNumber, long ackElicitingThreshold, long requestMaxAckDelay, long reorderingThreshold)
extends Record
implements Frame
An ACK_FREQUENCY frame (type 0xaf) of the QUIC ACK frequency extension, as quinn implements
it.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.github.mahmoudimus.quic.frame.Frame
Frame.Ack, Frame.AckFrequency, Frame.AckRange, Frame.ApplicationClose, Frame.ConnectionClose, Frame.Crypto, Frame.DataBlocked, Frame.Datagram, Frame.EcnCounts, Frame.HandshakeDone, Frame.ImmediateAck, Frame.MaxData, Frame.MaxStreamData, Frame.MaxStreams, Frame.NewConnectionId, Frame.NewToken, Frame.Padding, Frame.PathChallenge, Frame.PathResponse, Frame.Ping, Frame.ResetStream, Frame.RetireConnectionId, Frame.StopSending, Frame.Stream, Frame.StreamDataBlocked, Frame.StreamsBlocked -
Field Summary
Fields inherited from interface io.github.mahmoudimus.quic.frame.Frame
MAX_STREAM_COUNT -
Constructor Summary
ConstructorsConstructorDescriptionAckFrequency(long sequenceNumber, long ackElicitingThreshold, long requestMaxAckDelay, long reorderingThreshold) An ACK_FREQUENCY frame. -
Method Summary
Modifier and TypeMethodDescriptionlongReturns the value of theackElicitingThresholdrecord component.voidencode(ByteBuffer out) Writes the frame at the buffer's position.intThe encoded length.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.longReturns the value of thereorderingThresholdrecord component.longReturns the value of therequestMaxAckDelayrecord component.longReturns the value of thesequenceNumberrecord component.final StringtoString()Returns a string representation of this record class.type()The frame type.longtypeCode()The exact type code this frame encodes with, flags included.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface io.github.mahmoudimus.quic.frame.Frame
isAckEliciting
-
Constructor Details
-
AckFrequency
public AckFrequency(long sequenceNumber, long ackElicitingThreshold, long requestMaxAckDelay, long reorderingThreshold) An ACK_FREQUENCY frame.- Parameters:
sequenceNumber- the sequence numberackElicitingThreshold- the ack-eliciting thresholdrequestMaxAckDelay- the requested maximum ACK delay, in microsecondsreorderingThreshold- the reordering threshold
-
-
Method Details
-
type
Description copied from interface:FrameThe frame type. -
typeCode
public long typeCode()Description copied from interface:FrameThe exact type code this frame encodes with, flags included. -
encodedLength
public int encodedLength()Description copied from interface:FrameThe encoded length.- Specified by:
encodedLengthin interfaceFrame- Returns:
- the bytes
Frame.encode(java.nio.ByteBuffer)writes
-
encode
Description copied from interface:FrameWrites the frame at the buffer's position. -
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with '=='. -
sequenceNumber
public long sequenceNumber()Returns the value of thesequenceNumberrecord component.- Returns:
- the value of the
sequenceNumberrecord component
-
ackElicitingThreshold
public long ackElicitingThreshold()Returns the value of theackElicitingThresholdrecord component.- Returns:
- the value of the
ackElicitingThresholdrecord component
-
requestMaxAckDelay
public long requestMaxAckDelay()Returns the value of therequestMaxAckDelayrecord component.- Returns:
- the value of the
requestMaxAckDelayrecord component
-
reorderingThreshold
public long reorderingThreshold()Returns the value of thereorderingThresholdrecord component.- Returns:
- the value of the
reorderingThresholdrecord component
-