Documentation
¶
Index ¶
- type Dependency
- type ICache
- type IDependency
- type Redis
- func (r *Redis) Clear() error
- func (r *Redis) Del(key string) error
- func (r *Redis) Get(key string) (value string, dependencies []Dependency, ok bool, err error)
- func (r *Redis) GetDependencies(depKey ...string) ([]Dependency, error)
- func (r *Redis) IncrDependency(ttl *time.Duration, depKey ...string) error
- func (r *Redis) Set(key, value string, ttl *time.Duration, dependency ...IDependency) error
- func (r *Redis) SetDependency(ttl *time.Duration, dependency ...IDependency) error
- type RedisConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Dependency ¶
Dependency is a dependency data
func (Dependency) GetKey ¶
func (d Dependency) GetKey() string
GetKey return key of dependency counter
func (Dependency) GetValue ¶
func (d Dependency) GetValue() int64
GetValue return value of dependency counter
type ICache ¶
type ICache interface { //Set sets value of key with ttl and dependencies Set(key, value string, ttl *time.Duration, dependency ...IDependency) error //Get returns value of key Get(key string) (value string, dependencies []Dependency, ok bool, err error) //Del delete key from cache Del(key string) error //IncrDependency increment dependency counter IncrDependency(ttl *time.Duration, depKey ...string) error //GetDependencies returns dependency by key GetDependencies(depKey ...string) ([]Dependency, error) //SetDependency sets value of dependency SetDependency(ttl *time.Duration, dependencies ...IDependency) error //Clear clear all cache Clear() error }
ICache is an abstract cache, which describe methods
func NewRedis ¶
func NewRedis(conf *RedisConfig) (ICache, error)
NewRedis creat structure which implements ICache interface
type IDependency ¶
type IDependency interface { //GetKey return key of dependency counter GetKey() string //GetValue return value of dependency counter GetValue() int64 }
IDependency is an abstract dependency data
type Redis ¶
type Redis struct {
// contains filtered or unexported fields
}
Redis is implements of ICache methods
func (*Redis) GetDependencies ¶
func (r *Redis) GetDependencies(depKey ...string) ([]Dependency, error)
GetDependencies returns dependency by key
func (*Redis) IncrDependency ¶
IncrDependency increment dependency counter
func (*Redis) SetDependency ¶
func (r *Redis) SetDependency(ttl *time.Duration, dependency ...IDependency) error
SetDependency sets value of dependency
type RedisConfig ¶
type RedisConfig struct { Client redis.UniversalClient KeyPrefix string DependencyPrefix string LogPrefix string EnableDataCompress bool }
RedisConfig structure is used for configure redis based cache
Click to show internal directories.
Click to hide internal directories.