utils

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 14, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PanicIfErr

func PanicIfErr(err error)

func ReadBody

func ReadBody(resp *http.Response) (string, error)

func ToReadSeeker

func ToReadSeeker(r io.Reader) types.FixedLengthReader

Tries to reuse a buffer-backed reader. Otherwise, it creates a new Reader from the buffered data.

Types

type CopyOnWriteMap

type CopyOnWriteMap struct {
	// contains filtered or unexported fields
}

CopyOnWriteMap provides basic functionality of a copy-on-write dictionary that uses a valueCreator function (instead of a value like sync.Map)

func NewCopyOnWriteMap

func NewCopyOnWriteMap() *CopyOnWriteMap

func (*CopyOnWriteMap) LoadOrStore

func (c *CopyOnWriteMap) LoadOrStore(key interface{}, valueCreator func() (interface{}, error)) (value interface{}, loaded bool, err error)

type TrackedConnection

type TrackedConnection struct {
	// contains filtered or unexported fields
}

TrackedConnection represents a net connection over http that contains information about whether it's open/closed.

It benefits from the fact that a Transport will invoke `Close()` when a http request or http2 ping fails

func NewFailedConnection

func NewFailedConnection() *TrackedConnection

Creates a new TrackedConnection using the provided tcp conn.

func NewTrackedConnection

func NewTrackedConnection(conn net.Conn, closeHandler func(*TrackedConnection)) *TrackedConnection

Creates a new TrackedConnection using the provided tcp conn. It invokes the close handler once it's closed.

func (*TrackedConnection) Close

func (c *TrackedConnection) Close() error

func (*TrackedConnection) Id

func (c *TrackedConnection) Id() uuid.UUID

func (*TrackedConnection) IsOpen

func (c *TrackedConnection) IsOpen() bool

IsOpen() returns true when the connection is known to be open.

func (*TrackedConnection) LocalAddr

func (c *TrackedConnection) LocalAddr() net.Addr

func (*TrackedConnection) Read

func (c *TrackedConnection) Read(b []byte) (n int, err error)

func (*TrackedConnection) RemoteAddr

func (c *TrackedConnection) RemoteAddr() net.Addr

func (*TrackedConnection) SetDeadline

func (c *TrackedConnection) SetDeadline(t time.Time) error

func (*TrackedConnection) SetReadDeadline

func (c *TrackedConnection) SetReadDeadline(t time.Time) error

func (*TrackedConnection) SetWriteDeadline

func (c *TrackedConnection) SetWriteDeadline(t time.Time) error

func (*TrackedConnection) Write

func (c *TrackedConnection) Write(b []byte) (n int, err error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL