codec

package
v3.1.2 Latest Latest
Warning

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

Go to latest
Published: Nov 10, 2022 License: MIT Imports: 4 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Codec

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

Codec represents an instance of a cache store

func New

func New(store store.StoreInterface) *Codec

New return a new codec instance

func (*Codec) Clear

func (c *Codec) Clear(ctx context.Context) error

Clear resets all codec store data

func (*Codec) Delete

func (c *Codec) Delete(ctx context.Context, key any) error

Delete allows to remove a value for a given key identifier

func (*Codec) Get

func (c *Codec) Get(ctx context.Context, key any) (any, error)

Get allows to retrieve the value from a given key identifier

func (*Codec) GetStats

func (c *Codec) GetStats() *Stats

GetStats returns some statistics about the current codec

func (*Codec) GetStore

func (c *Codec) GetStore() store.StoreInterface

GetStore returns the store associated to this codec

func (*Codec) GetWithTTL

func (c *Codec) GetWithTTL(ctx context.Context, key any) (any, time.Duration, error)

GetWithTTL allows to retrieve the value from a given key identifier and its corresponding TTL

func (*Codec) Invalidate

func (c *Codec) Invalidate(ctx context.Context, options ...store.InvalidateOption) error

Invalidate invalidates some cach items from given options

func (*Codec) Set

func (c *Codec) Set(ctx context.Context, key any, value any, options ...store.Option) error

Set allows to set a value for a given key identifier and also allows to specify an expiration time

type CodecInterface

type CodecInterface interface {
	Get(ctx context.Context, key any) (any, error)
	GetWithTTL(ctx context.Context, key any) (any, time.Duration, error)
	Set(ctx context.Context, key any, value any, options ...store.Option) error
	Delete(ctx context.Context, key any) error
	Invalidate(ctx context.Context, options ...store.InvalidateOption) error
	Clear(ctx context.Context) error

	GetStore() store.StoreInterface
	GetStats() *Stats
}

CodecInterface represents an instance of a cache codec

type Stats

type Stats struct {
	Hits              int
	Miss              int
	SetSuccess        int
	SetError          int
	DeleteSuccess     int
	DeleteError       int
	InvalidateSuccess int
	InvalidateError   int
	ClearSuccess      int
	ClearError        int
}

Stats allows to returns some statistics of codec usage

Jump to

Keyboard shortcuts

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