Package org.glassfish.tyrus.core.frame
Class Frame
- java.lang.Object
-
- org.glassfish.tyrus.core.frame.Frame
-
- Direct Known Subclasses:
TyrusFrame
public class Frame extends java.lang.ObjectWebSocket frame representation.TODO: - masking (isMask is currently ignored) - validation - payloadLength is limited to int
- Author:
- Pavel Bucek
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classFrame.BuilderFrame builder.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static Frame.Builderbuilder()Create newFrame.Builder.static Frame.Builderbuilder(Frame frame)Create newFrame.Builderbased on provided frame.java.lang.IntegergetMaskingKey()Get masking key.bytegetOpcode()Get opcode.byte[]getPayloadData()Get payload data.longgetPayloadLength()Get payload length.booleanisControlFrame()Get information about frame type.booleanisFin()Get FIN value.booleanisMask()Currently not used.booleanisRsv1()GET RSV1 value.booleanisRsv2()GET RSV2 value.booleanisRsv3()GET RSV3 value.java.lang.StringtoString()
-
-
-
Constructor Detail
-
Frame
protected Frame(Frame frame)
Copy constructor.Note: this is shallow copy. Payload is *not* copied to new array.
- Parameters:
frame- copied frame.
-
-
Method Detail
-
isFin
public boolean isFin()
Get FIN value.- Returns:
truewhen FIN flag is set,falseotherwise.
-
isRsv1
public boolean isRsv1()
GET RSV1 value.- Returns:
truewhen RSV1 flag is set,falseotherwise.
-
isRsv2
public boolean isRsv2()
GET RSV2 value.- Returns:
truewhen RSV2 flag is set,falseotherwise.
-
isRsv3
public boolean isRsv3()
GET RSV3 value.- Returns:
truewhen RSV3 flag is set,falseotherwise.
-
isMask
public boolean isMask()
Currently not used.- Returns:
- not used.
-
getOpcode
public byte getOpcode()
Get opcode.- Returns:
- opcode (4 bit value).
-
getPayloadLength
public long getPayloadLength()
Get payload length.- Returns:
- payload length.
-
getMaskingKey
public java.lang.Integer getMaskingKey()
Get masking key.- Returns:
- masking key (32 bit value) or
nullwhen the frame should not be masked.
-
getPayloadData
public byte[] getPayloadData()
Get payload data.Changes done to returned array won't be propagated to current
Frameinstance. If you need to modify payload, you have to create new instance, seeBuilder#Frame(Frame). Length of returned array will be always same asgetPayloadLength().- Returns:
- payload data.
-
isControlFrame
public boolean isControlFrame()
Get information about frame type.- Returns:
truewhen this frame is control (close, ping, pong) frame,falseotherwise.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
builder
public static Frame.Builder builder()
Create newFrame.Builder.- Returns:
- new builder instance.
-
builder
public static Frame.Builder builder(Frame frame)
Create newFrame.Builderbased on provided frame.- Parameters:
frame- frame used as a base for building new frame.- Returns:
- new builder instance.
-
-