cache

package
v0.1.202 Latest Latest
Warning

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

Go to latest
Published: Mar 15, 2022 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Forever Always exist
	Forever = 0

	// Seconds1 1 second
	Seconds1 = time.Second
	// Seconds2 2 second
	Seconds2 = 2 * time.Second
	// Seconds3 3 second
	Seconds3 = 3 * time.Second
	// Seconds5 5 second
	Seconds5 = 5 * time.Second
	// Seconds6 6 second
	Seconds6 = 6 * time.Second
	// Seconds7 7 second
	Seconds7 = 7 * time.Second
	// Seconds8 8 second
	Seconds8 = 8 * time.Second
	// Seconds9 9 second
	Seconds9 = 9 * time.Second
	// Seconds10 10 second
	Seconds10 = 10 * time.Second
	// Seconds15 15 second
	Seconds15 = 15 * time.Second
	// Seconds20 20 second
	Seconds20 = 20 * time.Second
	// Seconds30 30 second
	Seconds30 = 30 * time.Second

	// OneMinutes 1 minutes
	OneMinutes = 60 * time.Second
	// TwoMinutes 2 minutes
	TwoMinutes = 120 * time.Second
	// ThreeMinutes 3 minutes
	ThreeMinutes = 180 * time.Second
	// FiveMinutes 5 minutes
	FiveMinutes = 300 * time.Second
	// TenMinutes 10 minutes
	TenMinutes = 600 * time.Second
	// FifteenMinutes 15 minutes
	FifteenMinutes = 900 * time.Second
	// HalfHour half an hour
	HalfHour = 1800 * time.Second
	// OneHour 1 hour
	OneHour = 3600 * time.Second
	// TwoHour 2 hours
	TwoHour = 7200 * time.Second
	// ThreeHour 3 hours
	ThreeHour = 10800 * time.Second
	// HalfDay 12 hours(half of the day)
	HalfDay = 43200 * time.Second
	// OneDay 24 hours(1 day)
	OneDay = 86400 * time.Second
	// TwoDay 2 day
	TwoDay = 172800 * time.Second
	// ThreeDay 3 day
	ThreeDay = 259200 * time.Second
	// OneWeek 7 day(one week)
	OneWeek = 604800 * time.Second
)

some generic expire time define.

Variables

View Source
var ReflectTypeICache = di.GetInterfaceReflectType((*ICache)(nil))

ReflectTypeICache used when your service claims to implement ICache

View Source
var ReflectTypeIMemoryCache = di.GetInterfaceReflectType((*IMemoryCache)(nil))

ReflectTypeIMemoryCache used when your service claims to implement IMemoryCache

Functions

func AddScopedICache

func AddScopedICache(builder *di.Builder, implType reflect.Type, implementedTypes ...reflect.Type)

AddScopedICache adds a type that implements ICache

func AddScopedICacheByFunc

func AddScopedICacheByFunc(builder *di.Builder, implType reflect.Type, build func(ctn di.Container) (interface{}, error), implementedTypes ...reflect.Type)

AddScopedICacheByFunc adds a type by a custom func

func AddScopedIMemoryCache

func AddScopedIMemoryCache(builder *di.Builder, implType reflect.Type, implementedTypes ...reflect.Type)

AddScopedIMemoryCache adds a type that implements IMemoryCache

func AddScopedIMemoryCacheByFunc

func AddScopedIMemoryCacheByFunc(builder *di.Builder, implType reflect.Type, build func(ctn di.Container) (interface{}, error), implementedTypes ...reflect.Type)

AddScopedIMemoryCacheByFunc adds a type by a custom func

func AddSingletonICache

func AddSingletonICache(builder *di.Builder, implType reflect.Type, implementedTypes ...reflect.Type)

AddSingletonICache adds a type that implements ICache

func AddSingletonICacheByFunc

func AddSingletonICacheByFunc(builder *di.Builder, implType reflect.Type, build func(ctn di.Container) (interface{}, error), implementedTypes ...reflect.Type)

AddSingletonICacheByFunc adds a type by a custom func

func AddSingletonICacheByObj

func AddSingletonICacheByObj(builder *di.Builder, obj interface{}, implementedTypes ...reflect.Type)

AddSingletonICacheByObj adds a prebuilt obj

func AddSingletonIMemoryCache

func AddSingletonIMemoryCache(builder *di.Builder, implType reflect.Type, implementedTypes ...reflect.Type)

AddSingletonIMemoryCache adds a type that implements IMemoryCache

func AddSingletonIMemoryCacheByFunc

func AddSingletonIMemoryCacheByFunc(builder *di.Builder, implType reflect.Type, build func(ctn di.Container) (interface{}, error), implementedTypes ...reflect.Type)

AddSingletonIMemoryCacheByFunc adds a type by a custom func

func AddSingletonIMemoryCacheByObj

func AddSingletonIMemoryCacheByObj(builder *di.Builder, obj interface{}, implementedTypes ...reflect.Type)

AddSingletonIMemoryCacheByObj adds a prebuilt obj

func AddTransientICache

func AddTransientICache(builder *di.Builder, implType reflect.Type, implementedTypes ...reflect.Type)

AddTransientICache adds a type that implements ICache

func AddTransientICacheByFunc

func AddTransientICacheByFunc(builder *di.Builder, implType reflect.Type, build func(ctn di.Container) (interface{}, error), implementedTypes ...reflect.Type)

AddTransientICacheByFunc adds a type by a custom func

func AddTransientIMemoryCache

func AddTransientIMemoryCache(builder *di.Builder, implType reflect.Type, implementedTypes ...reflect.Type)

AddTransientIMemoryCache adds a type that implements IMemoryCache

func AddTransientIMemoryCacheByFunc

func AddTransientIMemoryCacheByFunc(builder *di.Builder, implType reflect.Type, build func(ctn di.Container) (interface{}, error), implementedTypes ...reflect.Type)

AddTransientIMemoryCacheByFunc adds a type by a custom func

func RemoveAllICache

func RemoveAllICache(builder *di.Builder)

RemoveAllICache removes all ICache from the DI

func RemoveAllIMemoryCache

func RemoveAllIMemoryCache(builder *di.Builder)

RemoveAllIMemoryCache removes all IMemoryCache from the DI

Types

type ICache

type ICache interface {
	ttlcache.SimpleCache
	GetOrInsert(k string, adder func() (interface{}, time.Duration, error)) interface{}
}

ICache interface

func GetICacheFromContainer

func GetICacheFromContainer(ctn di.Container) ICache

GetICacheFromContainer alternative to SafeGetICacheFromContainer but panics of object is not present

func GetManyICacheFromContainer added in v0.1.178

func GetManyICacheFromContainer(ctn di.Container) []ICache

GetManyICacheFromContainer alternative to SafeGetManyICacheFromContainer but panics of object is not present

func SafeGetICacheFromContainer

func SafeGetICacheFromContainer(ctn di.Container) (ICache, error)

SafeGetICacheFromContainer trys to get the object by type, will not panic, returns nil and error

func SafeGetManyICacheFromContainer added in v0.1.178

func SafeGetManyICacheFromContainer(ctn di.Container) ([]ICache, error)

SafeGetManyICacheFromContainer trys to get the object by type, will not panic, returns nil and error

type IMemoryCache

type IMemoryCache interface {
	ICache
}

IMemoryCache interface

func GetIMemoryCacheFromContainer

func GetIMemoryCacheFromContainer(ctn di.Container) IMemoryCache

GetIMemoryCacheFromContainer alternative to SafeGetIMemoryCacheFromContainer but panics of object is not present

func GetManyIMemoryCacheFromContainer added in v0.1.178

func GetManyIMemoryCacheFromContainer(ctn di.Container) []IMemoryCache

GetManyIMemoryCacheFromContainer alternative to SafeGetManyIMemoryCacheFromContainer but panics of object is not present

func SafeGetIMemoryCacheFromContainer

func SafeGetIMemoryCacheFromContainer(ctn di.Container) (IMemoryCache, error)

SafeGetIMemoryCacheFromContainer trys to get the object by type, will not panic, returns nil and error

func SafeGetManyIMemoryCacheFromContainer added in v0.1.178

func SafeGetManyIMemoryCacheFromContainer(ctn di.Container) ([]IMemoryCache, error)

SafeGetManyIMemoryCacheFromContainer trys to get the object by type, will not panic, returns nil and error

Jump to

Keyboard shortcuts

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