From 8e516544f5892c4a109fb2b73a155c10aa264314 Mon Sep 17 00:00:00 2001 From: Vasiliy Tolstov Date: Thu, 30 Mar 2023 20:30:31 +0300 Subject: [PATCH] add MDelete Signed-off-by: Vasiliy Tolstov --- redis.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/redis.go b/redis.go index c4b3d3b..64e55ba 100755 --- a/redis.go +++ b/redis.go @@ -166,6 +166,25 @@ func (r *rkv) MRead(ctx context.Context, keys []string, vals interface{}, opts . return nil } +func (r *rkv) MDelete(ctx context.Context, keys []string, opts ...store.DeleteOption) error { + options := store.NewDeleteOptions(opts...) + if len(options.Namespace) == 0 { + options.Namespace = r.opts.Namespace + } + if options.Namespace == "" { + return r.cli.Del(ctx, keys...).Err() + } + if r.opts.Timeout > 0 { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, r.opts.Timeout) + defer cancel() + } + for idx := range keys { + keys[idx] = options.Namespace + keys[idx] + } + return r.cli.Del(ctx, keys...).Err() +} + func (r *rkv) Delete(ctx context.Context, key string, opts ...store.DeleteOption) error { options := store.NewDeleteOptions(opts...) if len(options.Namespace) == 0 {