Documentation
¶
Index ¶
- Variables
- type ClearFunc
- type RefreshCache
- func (r *RefreshCache[T]) Clear(ctx context.Context) error
- func (r *RefreshCache[T]) Data() *RefreshData[T]
- func (r *RefreshCache[T]) Get(ctx context.Context) (data T, err error)
- func (r *RefreshCache[T]) GetClearFunc() ClearFunc[T]
- func (r *RefreshCache[T]) GetRefreshFunc() RefreshFunc[T]
- func (r *RefreshCache[T]) Refresh(ctx context.Context) (data T, err error)
- func (r *RefreshCache[T]) SetClearFunc(clearFunc ClearFunc[T])
- func (r *RefreshCache[T]) SetRefreshFunc(refreshFunc RefreshFunc[T])
- type RefreshData
- func (r *RefreshData[T]) Clear(ctx context.Context, clearFunc ClearFunc[T]) error
- func (r *RefreshData[T]) Get(ctx context.Context, refreshFunc RefreshFunc[T]) (data T, err error)
- func (r *RefreshData[T]) Last() int64
- func (r *RefreshData[T]) LastErr() int64
- func (r *RefreshData[T]) LastErrTime() time.Time
- func (r *RefreshData[T]) LastTime() time.Time
- func (r *RefreshData[T]) MaxAge() int64
- func (r *RefreshData[T]) MaxErrAge() int64
- func (r *RefreshData[T]) Raw() (data T, err error)
- func (r *RefreshData[T]) Refresh(ctx context.Context, refreshFunc RefreshFunc[T]) (data T, err error)
- type RefreshDataOption
- type RefreshFunc
Constants ¶
This section is empty.
Variables ¶
View Source
var OldValKey = oldVal{}
Functions ¶
This section is empty.
Types ¶
type RefreshCache ¶
type RefreshCache[T any] struct { *RefreshData[T] RefreshFunc atomic.Pointer[RefreshFunc[T]] ClearFunc atomic.Pointer[ClearFunc[T]] }
func NewRefreshCache ¶
func NewRefreshCache[T any](refreshFunc RefreshFunc[T], maxAge time.Duration, opts ...RefreshDataOption[T]) *RefreshCache[T]
func (*RefreshCache[T]) Data ¶
func (r *RefreshCache[T]) Data() *RefreshData[T]
func (*RefreshCache[T]) Get ¶
func (r *RefreshCache[T]) Get(ctx context.Context) (data T, err error)
func (*RefreshCache[T]) GetClearFunc ¶
func (r *RefreshCache[T]) GetClearFunc() ClearFunc[T]
func (*RefreshCache[T]) GetRefreshFunc ¶
func (r *RefreshCache[T]) GetRefreshFunc() RefreshFunc[T]
func (*RefreshCache[T]) Refresh ¶
func (r *RefreshCache[T]) Refresh(ctx context.Context) (data T, err error)
func (*RefreshCache[T]) SetClearFunc ¶
func (r *RefreshCache[T]) SetClearFunc(clearFunc ClearFunc[T])
func (*RefreshCache[T]) SetRefreshFunc ¶
func (r *RefreshCache[T]) SetRefreshFunc(refreshFunc RefreshFunc[T])
type RefreshData ¶
type RefreshData[T any] struct { // contains filtered or unexported fields }
func NewRefreshData ¶
func NewRefreshData[T any](maxAge time.Duration, opts ...RefreshDataOption[T]) *RefreshData[T]
func (*RefreshData[T]) Clear ¶
func (r *RefreshData[T]) Clear(ctx context.Context, clearFunc ClearFunc[T]) error
func (*RefreshData[T]) Get ¶
func (r *RefreshData[T]) Get(ctx context.Context, refreshFunc RefreshFunc[T]) (data T, err error)
func (*RefreshData[T]) Last ¶
func (r *RefreshData[T]) Last() int64
func (*RefreshData[T]) LastErr ¶
func (r *RefreshData[T]) LastErr() int64
func (*RefreshData[T]) LastErrTime ¶
func (r *RefreshData[T]) LastErrTime() time.Time
func (*RefreshData[T]) LastTime ¶
func (r *RefreshData[T]) LastTime() time.Time
func (*RefreshData[T]) MaxAge ¶
func (r *RefreshData[T]) MaxAge() int64
func (*RefreshData[T]) MaxErrAge ¶
func (r *RefreshData[T]) MaxErrAge() int64
func (*RefreshData[T]) Raw ¶
func (r *RefreshData[T]) Raw() (data T, err error)
func (*RefreshData[T]) Refresh ¶
func (r *RefreshData[T]) Refresh(ctx context.Context, refreshFunc RefreshFunc[T]) (data T, err error)
type RefreshDataOption ¶
type RefreshDataOption[T any] func(*RefreshData[T])
func WithErrAge ¶
func WithErrAge[T any](age time.Duration) RefreshDataOption[T]
Click to show internal directories.
Click to hide internal directories.