consume

package
v0.8.2 Latest Latest
Warning

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

Go to latest
Published: Nov 30, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type NoticeConsumer

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

NoticeConsumer - консьюмер для сборки уведомлений в готовые сообщения и передачи по цепочке дальше для отправки получателю.

func New

func New(
	txManager mrstorage.DBTxManager,
	storage mrnotifier.NoticeStorage,
	useCaseQueue mrqueue.Consumer,
	errorWrapper mrcore.UseCaseErrorWrapper,
) *NoticeConsumer

New - создаёт объект NoticeConsumer.

func (*NoticeConsumer) CancelMessages

func (co *NoticeConsumer) CancelMessages(ctx context.Context, messages []any) error

CancelMessages - отменяет обработку уведомлений, которые были ранее считаны методом ReadMessages.

func (*NoticeConsumer) Close

func (co *NoticeConsumer) Close() error

Close - закрывает соединение консьюмера с источником данных.

func (*NoticeConsumer) CommitMessage

func (co *NoticeConsumer) CommitMessage(ctx context.Context, message any, preCommit func(ctx context.Context) error) error

CommitMessage - закрепляет результат обработки уведомления, которое было ранее считано методом ReadMessages. Внешняя функция preCommit работает вместе с фиксацией результата в рамках одной транзакции. При работе в рамках одной БД это позволяет коммитить изменения атомарно.

func (*NoticeConsumer) ReadMessages

func (co *NoticeConsumer) ReadMessages(ctx context.Context, limit uint32) ([]any, error)

ReadMessages - возвращает указанную порцию уведомлений для их обработки.

func (*NoticeConsumer) RejectMessage

func (co *NoticeConsumer) RejectMessage(ctx context.Context, message any, causeErr error) error

RejectMessage - отклоняет результат обработки уведомления, если в процессе возникла ошибка.

Jump to

Keyboard shortcuts

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