-
Notifications
You must be signed in to change notification settings - Fork 2
/
options.go
37 lines (32 loc) · 1013 Bytes
/
options.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package redis
import (
"time"
"github.com/americanas-go/ignite"
)
// Options represents redis client set options.
type Options struct {
Sentinel SentinelOptions
Password string
MaxRetries int
MinRetryBackoff time.Duration
MaxRetryBackoff time.Duration
DialTimeout time.Duration
ReadTimeout time.Duration
WriteTimeout time.Duration
PoolSize int
MinIdleConns int
MaxConnAge time.Duration
PoolTimeout time.Duration
IdleTimeout time.Duration
IdleCheckFrequency time.Duration
Client ClientOptions
Cluster ClusterOptions
}
// NewOptions returns options from config file or environment vars.
func NewOptions() (*Options, error) {
return ignite.NewOptionsWithPath[Options](root)
}
// NewOptionsWithPath unmarshals a given key path into options and returns it.
func NewOptionsWithPath(path string) (opts *Options, err error) {
return ignite.NewOptionsWithPath[Options](root, path)
}