apimachineryk8s.io/apimachinery/pkg/util/framer Index | Files

package framer

import "k8s.io/apimachinery/pkg/util/framer"

Package framer implements simple frame decoding techniques for an io.ReadCloser

Index

Functions

func NewJSONFramedReader

func NewJSONFramedReader(r io.ReadCloser) io.ReadCloser

NewJSONFramedReader returns an io.Reader that will decode individual JSON objects off of a wire.

The boundaries between each frame are valid JSON objects. A JSON parsing error will terminate the read.

func NewLengthDelimitedFrameReader

func NewLengthDelimitedFrameReader(r io.ReadCloser) io.ReadCloser

NewLengthDelimitedFrameReader returns an io.Reader that will decode length-prefixed frames off of a stream.

The protocol is:

stream: message ...
message: prefix body
prefix: 4 byte uint32 in BigEndian order, denotes length of body
body: bytes (0..prefix)

If the buffer passed to Read is not long enough to contain an entire frame, io.ErrShortRead will be returned along with the number of bytes read.

func NewLengthDelimitedFrameWriter

func NewLengthDelimitedFrameWriter(w io.Writer) io.Writer

Source Files

framer.go

Version
v0.33.0 (latest)
Published
Apr 11, 2025
Platform
linux/amd64
Imports
3 packages
Last checked
2 days ago

Tools for package owners.