module

Movie::Remote::FrameCodec

FrameCodec handles length-prefixed framing for wire protocol messages. Frame format: [4-byte length (big-endian)] [JSON payload]

Constants

MAX_FRAME_SIZE = (16 * 1024) * 1024

Maximum frame size (16 MB)

Class methods

decode(io : IO) : WireEnvelope | Nil

Decodes a WireEnvelope from the IO. Returns nil on EOF or if the connection is closed. Raises on malformed frames.

Source
decode_from_bytes(bytes : Bytes) : WireEnvelope | Nil

Decodes an envelope from bytes (useful for testing).

Source
encode(envelope : WireEnvelope, io : IO) : Nil

Encodes a WireEnvelope to the IO with length-prefixed framing.

Source
encode_to_bytes(envelope : WireEnvelope) : Bytes

Encodes an envelope to bytes (useful for testing).

Source