Files
token-go/persist/adapter.go
2023-08-10 19:04:59 +08:00

38 lines
1.2 KiB
Go

package persist
import "reflect"
type Adapter interface {
// GetStr string operate string value
GetStr(key string) string
// SetStr set store value and timeout
SetStr(key string, value string, timeout int64) error
// UpdateStr only update value
UpdateStr(key string, value string) error
// DeleteStr delete string value
DeleteStr(key string) error
// GetStrTimeout get expire
GetStrTimeout(key string) int64
// UpdateStrTimeout update expire time
UpdateStrTimeout(key string, timeout int64) error
// Get returns interface{}
// If serializer != nil, need to input reflect.Type, used to serializer to deserialize
Get(key string, t ...reflect.Type) interface{}
// Set store interface{}
Set(key string, value interface{}, timeout int64) error
// Update only update interface{} value
Update(key string, value interface{}) error
// Delete delete interface{} value
Delete(key string) error
// GetTimeout get expire
GetTimeout(key string) int64
// UpdateTimeout update timeout
UpdateTimeout(key string, timeout int64) error
// SetSerializer used to serialize and deserialize
// Serialize when call Set() or Update(), deserialize when call Get(key,t)
SetSerializer(serializer Serializer)
}