queue

package
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 26, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultQueueName   = "webhookx:queue"
	InvisibleQueueName = "webhookx:queue_invisible"
	QueueDataHashName  = "webhookx:queue_data"
	VisibilityTimeout  = 60
)

Variables

This section is empty.

Functions

This section is empty.

Types

type RedisTaskQueue

type RedisTaskQueue struct {
	// contains filtered or unexported fields
}

RedisTaskQueue use redis as queue implementation

func NewRedisQueue

func NewRedisQueue(client *redis.Client) *RedisTaskQueue

func (*RedisTaskQueue) Add

func (q *RedisTaskQueue) Add(task *TaskMessage, scheduleAt time.Time) error

func (*RedisTaskQueue) Delete

func (q *RedisTaskQueue) Delete(task *TaskMessage) error

func (*RedisTaskQueue) Get

func (q *RedisTaskQueue) Get() (*TaskMessage, error)

type TaskMessage

type TaskMessage struct {
	ID string

	Data interface{}
	// contains filtered or unexported fields
}

func NewTaskMessage

func NewTaskMessage(data interface{}) *TaskMessage

func (*TaskMessage) String

func (t *TaskMessage) String() string

func (*TaskMessage) UnmarshalData

func (t *TaskMessage) UnmarshalData(v interface{}) error

type TaskQueue

type TaskQueue interface {
	Add(task *TaskMessage, scheduleAt time.Time) error
	Get() (task *TaskMessage, err error)
	Delete(task *TaskMessage) error
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL