From 3ecd10b367e2459dc1e8c44cf344ef83bedc315c Mon Sep 17 00:00:00 2001 From: tiglog Date: Wed, 16 Aug 2023 07:27:28 +0800 Subject: [PATCH] feat: wrapper asynq --- gqueue/queue.go | 8 ++++---- gqueue/wrapper.go | 30 ++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 4 deletions(-) create mode 100644 gqueue/wrapper.go diff --git a/gqueue/queue.go b/gqueue/queue.go index 6d617d0..5d76ae3 100644 --- a/gqueue/queue.go +++ b/gqueue/queue.go @@ -29,7 +29,7 @@ func Init(addr, username, password string, database int) { var cli *asynq.Client -func Client() *asynq.Client { +func GetClient() *asynq.Client { onceCli.Do(func() { cli = asynq.NewClient(redisOpt) }) @@ -38,7 +38,7 @@ func Client() *asynq.Client { var svc *asynq.Server -func ServerWithArgs(concurrency int, fn asynq.ErrorHandlerFunc) *asynq.Server { +func GetServerWithArgs(concurrency int, fn asynq.ErrorHandlerFunc) *asynq.Server { onceSvc.Do(func() { svc = asynq.NewServer( redisOpt, @@ -51,7 +51,7 @@ func ServerWithArgs(concurrency int, fn asynq.ErrorHandlerFunc) *asynq.Server { return svc } -func ServerWithConfig(cfg asynq.Config) *asynq.Server { +func GetServerWithConfig(cfg asynq.Config) *asynq.Server { onceSvc.Do(func() { svc = asynq.NewServer( redisOpt, @@ -61,7 +61,7 @@ func ServerWithConfig(cfg asynq.Config) *asynq.Server { return svc } -func Server() *asynq.Server { +func GetServer() *asynq.Server { onceSvc.Do(func() { svc = asynq.NewServer( redisOpt, diff --git a/gqueue/wrapper.go b/gqueue/wrapper.go new file mode 100644 index 0000000..ba1b557 --- /dev/null +++ b/gqueue/wrapper.go @@ -0,0 +1,30 @@ +// +// wrapper.go +// Copyright (C) 2023 tiglog +// +// Distributed under terms of the MIT license. +// + +package gqueue + +import "github.com/hibiken/asynq" + +type Task = asynq.Task +type Client = asynq.Client +type Server = asynq.Server + +var GetRetryCount = asynq.GetRetryCount +var GetTaskID = asynq.GetTaskID +var GetQueueName = asynq.GetQueueName +var GetMaxRetry = asynq.GetMaxRetry + +var ProcessIn = asynq.ProcessIn +var ProcessAt = asynq.ProcessAt + +var MaxRetry = asynq.MaxRetry +var Timeout = asynq.Timeout +var SkipRetry = asynq.SkipRetry + +var NewTask = asynq.NewTask +var NewServeMux = asynq.NewServeMux +var NewClient = asynq.NewClient