gob 등록

This commit is contained in:
2023-07-17 17:47:07 +09:00
parent 67cca13326
commit ba61a11659
7 changed files with 125 additions and 39 deletions

View File

@ -58,14 +58,18 @@ func appendArgs[T any](args []any, ext ...T) []any {
return args
}
func (rh *RedisonHandler) JSONMSet(key string, kv map[string]any) error {
func (rh *RedisonHandler) JSONMSetRel(key string, prefixPath string, kv map[string]any) error {
if len(prefixPath) > 0 && !strings.HasSuffix(prefixPath, ".") {
prefixPath += "."
}
pl := rh.Pipeline()
for path, obj := range kv {
b, err := json.Marshal(obj)
if err != nil {
return err
}
pl.Do(rh.ctx, "JSON.SET", key, path, b)
pl.Do(rh.ctx, "JSON.SET", key, prefixPath+path, b)
}
cmders, err := pl.Exec(rh.ctx)
@ -81,6 +85,10 @@ func (rh *RedisonHandler) JSONMSet(key string, kv map[string]any) error {
return nil
}
func (rh *RedisonHandler) JSONMSet(key string, kv map[string]any) error {
return rh.JSONMSetRel(key, "", kv)
}
func (rh *RedisonHandler) JSONSet(key, path string, obj any, opts ...SetOption) (bool, error) {
b, err := json.Marshal(obj)
if err != nil {