2021-01-12 00:42:33 +08:00
|
|
|
// Copyright GoFrame Author(https://goframe.org). All Rights Reserved.
|
2018-04-18 18:05:46 +08:00
|
|
|
//
|
|
|
|
// This Source Code Form is subject to the terms of the MIT License.
|
|
|
|
// If a copy of the MIT was not distributed with this file,
|
2019-02-02 16:18:25 +08:00
|
|
|
// You can obtain one at https://github.com/gogf/gf.
|
2018-04-18 18:05:46 +08:00
|
|
|
|
2019-04-02 14:37:46 +08:00
|
|
|
// Package gredis provides convenient client for redis server.
|
2019-01-16 13:35:16 +08:00
|
|
|
//
|
2019-05-08 21:03:04 +08:00
|
|
|
// Redis Client.
|
2019-05-14 22:02:09 +08:00
|
|
|
//
|
2019-05-08 21:03:04 +08:00
|
|
|
// Redis Commands Official: https://redis.io/commands
|
2019-05-14 22:02:09 +08:00
|
|
|
//
|
2019-05-08 21:03:04 +08:00
|
|
|
// Redis Chinese Documentation: http://redisdoc.com/
|
2018-04-18 18:05:46 +08:00
|
|
|
package gredis
|
|
|
|
|
2021-09-26 23:22:32 +08:00
|
|
|
// New creates and returns a redis client.
|
|
|
|
// It creates a default redis adapter of go-redis.
|
2021-09-23 19:12:02 +08:00
|
|
|
func New(config ...*Config) (*Redis, error) {
|
2022-02-14 11:46:20 +08:00
|
|
|
if len(config) > 0 && config[0] != nil {
|
|
|
|
// Redis client with go redis implements adapter from given configuration.
|
2021-09-26 23:22:32 +08:00
|
|
|
return &Redis{adapter: NewAdapterGoRedis(config[0])}, nil
|
2019-09-10 20:38:23 +08:00
|
|
|
}
|
2022-02-14 11:46:20 +08:00
|
|
|
// Redis client with go redis implements adapter from package configuration.
|
|
|
|
if configFromGlobal, ok := GetConfig(); ok {
|
|
|
|
return &Redis{adapter: NewAdapterGoRedis(configFromGlobal)}, nil
|
2019-06-19 09:06:52 +08:00
|
|
|
}
|
2022-02-14 11:46:20 +08:00
|
|
|
// Redis client with empty adapter.
|
|
|
|
return &Redis{}, nil
|
2018-04-18 18:05:46 +08:00
|
|
|
}
|
|
|
|
|
2021-09-26 23:22:32 +08:00
|
|
|
// NewWithAdapter creates and returns a redis client with given adapter.
|
2021-09-23 19:12:02 +08:00
|
|
|
func NewWithAdapter(adapter Adapter) *Redis {
|
|
|
|
return &Redis{adapter: adapter}
|
2021-01-25 21:59:44 +08:00
|
|
|
}
|