refactor: workers

This commit is contained in:
DevMiner 2024-08-29 00:46:32 +02:00
parent 02ad720439
commit 8fa44e5f72
20 changed files with 764 additions and 465 deletions

19
internal/utils/tasks.go Normal file
View file

@ -0,0 +1,19 @@
package utils
import (
"context"
"encoding/json"
"github.com/versia-pub/versia-go/pkg/taskqueue"
)
func ParseTask[T any](handler func(context.Context, T) error) func(context.Context, taskqueue.Task) error {
return func(ctx context.Context, task taskqueue.Task) error {
var data T
if err := json.Unmarshal(task.Payload, &data); err != nil {
return err
}
return handler(ctx, data)
}
}