messagequeue

package
v1.7.0 Latest Latest
Warning

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

Go to latest
Published: May 25, 2026 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Package messagequeue provides a portable message queue API with cross-cutting concerns.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MQ

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

func NewMQ

func NewMQ(d driver.MessageQueue, opts ...Option) *MQ

func (*MQ) ChangeVisibility

func (mq *MQ) ChangeVisibility(ctx context.Context, queueURL, receiptHandle string, timeout int) error

func (*MQ) CreateQueue

func (mq *MQ) CreateQueue(ctx context.Context, config driver.QueueConfig) (*driver.QueueInfo, error)

func (*MQ) DeleteMessage

func (mq *MQ) DeleteMessage(ctx context.Context, queueURL, receiptHandle string) error

func (*MQ) DeleteMessageBatch added in v1.2.0

func (mq *MQ) DeleteMessageBatch(
	ctx context.Context, queue string, entries []driver.BatchDeleteEntry,
) (*driver.BatchDeleteResult, error)

func (*MQ) DeleteQueue

func (mq *MQ) DeleteQueue(ctx context.Context, url string) error

func (*MQ) GetQueueAttributes added in v1.2.0

func (mq *MQ) GetQueueAttributes(
	ctx context.Context, queue string,
) (*driver.QueueAttributes, error)

func (*MQ) GetQueueInfo

func (mq *MQ) GetQueueInfo(ctx context.Context, url string) (*driver.QueueInfo, error)

func (*MQ) ListQueues

func (mq *MQ) ListQueues(ctx context.Context, prefix string) ([]driver.QueueInfo, error)

func (*MQ) PurgeQueue added in v1.2.0

func (mq *MQ) PurgeQueue(ctx context.Context, queue string) error

func (*MQ) ReceiveMessages

func (mq *MQ) ReceiveMessages(ctx context.Context, input driver.ReceiveMessageInput) ([]driver.Message, error)

func (*MQ) ReceiveMessagesWithOptions added in v1.2.0

func (mq *MQ) ReceiveMessagesWithOptions(
	ctx context.Context, queue string, opts driver.ReceiveOptions,
) ([]driver.Message, error)

func (*MQ) SendMessage

func (mq *MQ) SendMessage(ctx context.Context, input driver.SendMessageInput) (*driver.SendMessageOutput, error)

func (*MQ) SendMessageBatch added in v1.2.0

func (mq *MQ) SendMessageBatch(
	ctx context.Context, queue string, entries []driver.BatchSendEntry,
) (*driver.BatchSendResult, error)

func (*MQ) SetQueueAttributes added in v1.2.0

func (mq *MQ) SetQueueAttributes(
	ctx context.Context, queue string, attrs map[string]int,
) error

type Option

type Option func(*MQ)

func WithErrorInjection

func WithErrorInjection(i *inject.Injector) Option

func WithLatency

func WithLatency(d time.Duration) Option

func WithMetrics

func WithMetrics(m *metrics.Collector) Option

func WithRateLimiter

func WithRateLimiter(l *ratelimit.Limiter) Option

func WithRecorder

func WithRecorder(r *recorder.Recorder) Option

Directories

Path Synopsis
Package driver defines the interface for message queue service implementations.
Package driver defines the interface for message queue service implementations.

Jump to

Keyboard shortcuts

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