Interface Frame

  • All Known Implementing Classes:
    DataFrame

    public interface Frame
    The Frame interface 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.
    Author:
    Niall Gallagher
    See Also:
    DataFrame
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      byte[] getBinary()
      This returns the binary payload that is to be sent with the frame.
      Frame getFrame​(FrameType type)
      This method is used to convert from one frame type to another.
      java.lang.String getText()
      This returns the text payload that is to be sent with the frame.
      FrameType 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.
    • Method Detail

      • isFinal

        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.
        Returns:
        this returns false if the frame is a fragment
      • getBinary

        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.
        Returns:
        the binary payload to be sent with the frame
      • getText

        java.lang.String 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.
        Returns:
        the text payload to be sent with the frame
      • getFrame

        Frame getFrame​(FrameType type)
        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.
        Parameters:
        type - this is the frame type to convert to
        Returns:
        a new frame using the specified frame type
      • getType

        FrameType 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.
        Returns:
        this returns the type of frame that this represents