store

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Oct 10, 2024 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrNotFound      = errors.New("not found")
	ErrAlreadyExists = errors.New("already exists")
)

Functions

func IgnoreAlreadyExists

func IgnoreAlreadyExists(err error) error

func IgnoreErrNotFound

func IgnoreErrNotFound(err error) error

Types

type Store

type Store[E api.Object] interface {
	Create(ctx context.Context, obj E) (E, error)
	Get(ctx context.Context, id string) (E, error)
	Update(ctx context.Context, obj E) (E, error)
	Delete(ctx context.Context, id string) error
	List(ctx context.Context) ([]E, error)

	Watch(ctx context.Context) (Watch[E], error)
}

type Watch

type Watch[E api.Object] interface {
	Stop()
	Events() <-chan WatchEvent[E]
}

type WatchEvent

type WatchEvent[E api.Object] struct {
	Type   WatchEventType
	Object E
}

type WatchEventType

type WatchEventType string
const (
	WatchEventTypeCreated WatchEventType = "Created"
	WatchEventTypeUpdated WatchEventType = "Updated"
	WatchEventTypeDeleted WatchEventType = "Deleted"
)

Jump to

Keyboard shortcuts

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