export cache package, add client interceptor customization
parent
dbca20e3df
commit
d1b303fe7e
@ -1,4 +1,4 @@
|
|||||||
package internal
|
package cache
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
@ -1,4 +1,4 @@
|
|||||||
package internal
|
package cache
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
@ -1,5 +1,3 @@
|
|||||||
package cache
|
package cache
|
||||||
|
|
||||||
import "github.com/tal-tech/go-zero/core/stores/internal"
|
type CacheConf = ClusterConf
|
||||||
|
|
||||||
type CacheConf = internal.ClusterConf
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package internal
|
package cache
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
@ -1,4 +1,4 @@
|
|||||||
package internal
|
package cache
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
@ -1,21 +1,45 @@
|
|||||||
package cache
|
package cache
|
||||||
|
|
||||||
import (
|
import "time"
|
||||||
"time"
|
|
||||||
|
|
||||||
"github.com/tal-tech/go-zero/core/stores/internal"
|
const (
|
||||||
|
defaultExpiry = time.Hour * 24 * 7
|
||||||
|
defaultNotFoundExpiry = time.Minute
|
||||||
)
|
)
|
||||||
|
|
||||||
type Option = internal.Option
|
type (
|
||||||
|
Options struct {
|
||||||
|
Expiry time.Duration
|
||||||
|
NotFoundExpiry time.Duration
|
||||||
|
}
|
||||||
|
|
||||||
|
Option func(o *Options)
|
||||||
|
)
|
||||||
|
|
||||||
|
func newOptions(opts ...Option) Options {
|
||||||
|
var o Options
|
||||||
|
for _, opt := range opts {
|
||||||
|
opt(&o)
|
||||||
|
}
|
||||||
|
|
||||||
|
if o.Expiry <= 0 {
|
||||||
|
o.Expiry = defaultExpiry
|
||||||
|
}
|
||||||
|
if o.NotFoundExpiry <= 0 {
|
||||||
|
o.NotFoundExpiry = defaultNotFoundExpiry
|
||||||
|
}
|
||||||
|
|
||||||
|
return o
|
||||||
|
}
|
||||||
|
|
||||||
func WithExpiry(expiry time.Duration) Option {
|
func WithExpiry(expiry time.Duration) Option {
|
||||||
return func(o *internal.Options) {
|
return func(o *Options) {
|
||||||
o.Expiry = expiry
|
o.Expiry = expiry
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func WithNotFoundExpiry(expiry time.Duration) Option {
|
func WithNotFoundExpiry(expiry time.Duration) Option {
|
||||||
return func(o *internal.Options) {
|
return func(o *Options) {
|
||||||
o.NotFoundExpiry = expiry
|
o.NotFoundExpiry = expiry
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package internal
|
package cache
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"sync/atomic"
|
"sync/atomic"
|
@ -1,4 +1,4 @@
|
|||||||
package internal
|
package cache
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
@ -1,4 +1,4 @@
|
|||||||
package internal
|
package cache
|
||||||
|
|
||||||
import "github.com/tal-tech/go-zero/core/stores/redis"
|
import "github.com/tal-tech/go-zero/core/stores/redis"
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
package internal
|
package cache
|
||||||
|
|
||||||
import "strings"
|
import "strings"
|
||||||
|
|
@ -1,33 +0,0 @@
|
|||||||
package internal
|
|
||||||
|
|
||||||
import "time"
|
|
||||||
|
|
||||||
const (
|
|
||||||
defaultExpiry = time.Hour * 24 * 7
|
|
||||||
defaultNotFoundExpiry = time.Minute
|
|
||||||
)
|
|
||||||
|
|
||||||
type (
|
|
||||||
Options struct {
|
|
||||||
Expiry time.Duration
|
|
||||||
NotFoundExpiry time.Duration
|
|
||||||
}
|
|
||||||
|
|
||||||
Option func(o *Options)
|
|
||||||
)
|
|
||||||
|
|
||||||
func newOptions(opts ...Option) Options {
|
|
||||||
var o Options
|
|
||||||
for _, opt := range opts {
|
|
||||||
opt(&o)
|
|
||||||
}
|
|
||||||
|
|
||||||
if o.Expiry <= 0 {
|
|
||||||
o.Expiry = defaultExpiry
|
|
||||||
}
|
|
||||||
if o.NotFoundExpiry <= 0 {
|
|
||||||
o.NotFoundExpiry = defaultNotFoundExpiry
|
|
||||||
}
|
|
||||||
|
|
||||||
return o
|
|
||||||
}
|
|
@ -1,5 +1,7 @@
|
|||||||
package kv
|
package kv
|
||||||
|
|
||||||
import "github.com/tal-tech/go-zero/core/stores/internal"
|
import (
|
||||||
|
"github.com/tal-tech/go-zero/core/stores/cache"
|
||||||
|
)
|
||||||
|
|
||||||
type KvConf = internal.ClusterConf
|
type KvConf = cache.ClusterConf
|
||||||
|
Loading…
Reference in New Issue