Package io.github.mahmoudimus.http2
Record Class Frame.Data
java.lang.Object
java.lang.Record
io.github.mahmoudimus.http2.Frame.Data
- Record Components:
streamId- the nonzero stream identifierdata- the content bytes, retained without copyingendStream- whether this frame ends the streampadding- padding octets including the Pad Length octet, or 0 for no padding
- All Implemented Interfaces:
Frame
- Enclosing interface:
Frame
public static record Frame.Data(int streamId, byte[] data, boolean endStream, int padding)
extends Record
implements Frame
DATA (§6.1): part of a stream's content.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.github.mahmoudimus.http2.Frame
Frame.Continuation, Frame.Data, Frame.GoAway, Frame.Headers, Frame.Ping, Frame.Priority, Frame.PrioritySpec, Frame.PushPromise, Frame.RstStream, Frame.Settings, Frame.Unknown, Frame.WindowUpdate -
Field Summary
Fields inherited from interface io.github.mahmoudimus.http2.Frame
MAX_STREAM_ID -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbyte[]data()Returns the value of thedatarecord component.booleanReturns the value of theendStreamrecord component.final booleanIndicates whether some other object is "equal to" this one.intThe bytes this frame counts against flow-control windows: data plus padding.final inthashCode()Returns a hash code value for this object.intpadding()Returns the value of thepaddingrecord component.intstreamId()Returns the value of thestreamIdrecord component.final StringtoString()Returns a string representation of this record class.inttype()The frame type code, one of theFrameTypeconstants (or any value forFrame.Unknown).
-
Constructor Details
-
Data
public Data(int streamId, byte[] data, boolean endStream, int padding) Creates DATA with a nonzero stream and valid padding.- Parameters:
streamId- the nonzero stream identifierdata- the content bytes, retained without copyingendStream- whether this frame ends the streampadding- padding octets including the Pad Length octet, or 0 for no padding
-
Data
public Data(int streamId, byte[] data, boolean endStream) Creates an unpadded DATA frame.- Parameters:
streamId- the nonzero stream identifierdata- the content bytes, retained without copyingendStream- whether this frame ends the stream
-
-
Method Details
-
type
public int type()Description copied from interface:FrameThe frame type code, one of theFrameTypeconstants (or any value forFrame.Unknown). -
flowControlledLength
public int flowControlledLength()The bytes this frame counts against flow-control windows: data plus padding.- Returns:
- the content length plus padding, in octets
-
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. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with '=='. -
streamId
public int streamId()Returns the value of thestreamIdrecord component. -
data
public byte[] data()Returns the value of thedatarecord component.- Returns:
- the value of the
datarecord component
-
endStream
public boolean endStream()Returns the value of theendStreamrecord component.- Returns:
- the value of the
endStreamrecord component
-
padding
public int padding()Returns the value of thepaddingrecord component.- Returns:
- the value of the
paddingrecord component
-