Package org.simpleframework.http.socket
Class DataFrame
java.lang.Object
org.simpleframework.http.socket.DataFrame
- All Implemented Interfaces:
Frame
The
DataFrame
object represents a frame as defined in
RFC 6455. A frame is a very lightweight envelope used to send
control information and either text or binary user data. Typically
a frame will represent a single message however, it is possible
to fragment a single frame up in to several frames. A fragmented
frame has a specific FrameType
indicating that it
is a continuation frame.- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionConstructor for theDataFrame
object.Constructor for theDataFrame
object.Constructor for theDataFrame
object.Constructor for theDataFrame
object.Constructor for theDataFrame
object.Constructor for theDataFrame
object.Constructor for theDataFrame
object. -
Method Summary
Modifier and TypeMethodDescriptionbyte[]
This returns the binary payload that is to be sent with the frame.This method is used to convert from one frame type to another.getText()
This returns the text payload that is to be sent with the frame.getType()
This is used to determine the type of frame.boolean
isFinal()
This is used to determine if the frame is the final frame in a sequence of fragments or a whole frame.toString()
This returns the text payload that is to be sent with the frame.
-
Field Details
-
type
This is the type used to determine the intent of the frame. -
data
This contains the payload to be sent with the frame. -
last
private final boolean lastThis determines if the frame is the last of a sequence.
-
-
Constructor Details
-
DataFrame
Constructor for theDataFrame
object. This is used to create a frame using the specified data and frame type. A zero payload is created using this constructor and is suitable only for specific control frames such as connection termination.- Parameters:
type
- this is the frame type used for this instance
-
DataFrame
Constructor for theDataFrame
object. This is used to create a frame using the specified data and frame type. In some cases a control frame may require a zero length payload.- Parameters:
type
- this is the frame type used for this instancedata
- this is the payload for this frame
-
DataFrame
Constructor for theDataFrame
object. This is used to create a frame using the specified data and frame type. In some cases a control frame may require a zero length payload.- Parameters:
type
- this is the frame type used for this instancedata
- this is the payload for this framelast
- true if this is not a fragment in a sequence
-
DataFrame
Constructor for theDataFrame
object. This is used to create a frame using the specified data and frame type. In some cases a control frame may require a zero length payload.- Parameters:
type
- this is the frame type used for this instancedata
- this is the payload for this frame
-
DataFrame
Constructor for theDataFrame
object. This is used to create a frame using the specified data and frame type. In some cases a control frame may require a zero length payload.- Parameters:
type
- this is the frame type used for this instancelast
- true if this is not a fragment in a sequencedata
- this is the payload for this frame
-
DataFrame
Constructor for theDataFrame
object. This is used to create a frame using the specified data and frame type. In some cases a control frame may require a zero length payload.- Parameters:
type
- this is the frame type used for this instancedata
- this is the payload for this frame
-
DataFrame
Constructor for theDataFrame
object. This is used to create a frame using the specified data and frame type. In some cases a control frame may require a zero length payload.- Parameters:
type
- this is the frame type used for this instancedata
- this is the payload for this framelast
- true if this is not a fragment in a sequence
-
-
Method Details
-
isFinal
public boolean isFinal()This is used to determine if the frame is the final frame in a sequence of fragments or a whole frame. If this returns false then the frame is a continuation from from a sequence of fragments, otherwise it is a whole frame or the last fragment. -
getBinary
public byte[] getBinary()This returns the binary payload that is to be sent with the frame. It contains no headers or other meta data. If the original data was text this converts it to UTF-8. -
getText
This returns the text payload that is to be sent with the frame. It contains no header information or meta data. Caution should be used with this method as binary payloads will encode to garbage when decoded as UTF-8. -
getFrame
This method is used to convert from one frame type to another. Converting a frame type is useful in scenarios such as when a ping needs to respond to a pong or when it is more convenient to send a text frame as binary. -
getType
This is used to determine the type of frame. Interpretation of this type is outlined in RFC 6455 and can be loosely categorised as control frames and either data or binary frames. -
toString
This returns the text payload that is to be sent with the frame. It contains no header information or meta data. Caution should be used with this method as binary payloads will encode to garbage when decoded as UTF-8.
-