package redis // Driver is the interface which each supported redis client // should support in order to be used in the redis session database. type Driver interface { Connect(c Config) error PingPong() (bool, error) CloseConnection() error Set(key string, value interface{}, secondsLifetime int64) error Get(key string) (interface{}, error) TTL(key string) (seconds int64, hasExpiration bool, found bool) UpdateTTL(key string, newSecondsLifeTime int64) error UpdateTTLMany(prefix string, newSecondsLifeTime int64) error GetAll() (interface{}, error) GetKeys(prefix string) ([]string, error) Delete(key string) error } var ( _ Driver = (*RedigoDriver)(nil) _ Driver = (*RadixDriver)(nil) ) // Redigo returns the driver for the redigo go redis client. // Which is the default one. // You can customize further any specific driver's properties. func Redigo() *RedigoDriver { return &RedigoDriver{} } // Radix returns the driver for the radix go redis client. func Radix() *RadixDriver { return &RadixDriver{} }