queues

package
v1.0.5 Latest Latest
Warning

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

Go to latest
Published: Apr 2, 2025 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type LocalQueue

type LocalQueue[T any] struct {
	// contains filtered or unexported fields
}

func NewLocalQueue

func NewLocalQueue[T any]() *LocalQueue[T]

func (*LocalQueue[T]) New

func (l *LocalQueue[T]) New(ctx context.Context, sessionID string) error

func (*LocalQueue[T]) Publish

func (l *LocalQueue[T]) Publish(ctx context.Context, sessionID string, event T) error

func (*LocalQueue[T]) PublishFromChan

func (l *LocalQueue[T]) PublishFromChan(ctx context.Context, sessionID string, events chan T) error

func (*LocalQueue[T]) Subscribe

func (l *LocalQueue[T]) Subscribe(ctx context.Context, sessionID string) chan T

type Queue

type Queue[T any] interface {
	New(ctx context.Context, sessionID string) error
	Publish(ctx context.Context, sessionID string, event T) error
	Subscribe(ctx context.Context, sessionID string) chan T
	PublishFromChan(ctx context.Context, sessionID string, events chan T) error
}

type RedisQueue

type RedisQueue[T any] struct {
	// contains filtered or unexported fields
}

func NewRedisQueue

func NewRedisQueue[T any](redisClient redis.Cmdable, prefix string) *RedisQueue[T]

func (*RedisQueue[T]) New

func (r *RedisQueue[T]) New(ctx context.Context, sessionID string) error

func (*RedisQueue[T]) Publish

func (r *RedisQueue[T]) Publish(ctx context.Context, sessionID string, event T) error

Publish serializes the event to JSON and pushes it to the Redis list.

func (*RedisQueue[T]) PublishFromChan

func (r *RedisQueue[T]) PublishFromChan(ctx context.Context, sessionID string, events chan T) error

func (*RedisQueue[T]) Subscribe

func (r *RedisQueue[T]) Subscribe(ctx context.Context, sessionID string) chan T

Jump to

Keyboard shortcuts

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