Versions in this module Expand all Collapse all v0 v0.20.0 Sep 5, 2025 v0.19.0 Sep 3, 2025 Changes in this version + var ErrNoTransaction = fmt.Errorf("database transaction is not set") + type Config struct + IgnoreNoTx bool + NotifyChannel string + SendNotify bool + TableName string + func (c *Config) ApplyDefaults() + type Event interface + Name func() string + Payload func() json.RawMessage + type Outbox struct + func NewOutbox(dbpool *pgxpool.Pool, cfg Config) *Outbox + func (o *Outbox) NewEventMessage(e Event) *eventMessage + func (o *Outbox) NotifyNewEventMessage(ctx context.Context, eventID uuid.UUID, tx postgresdb.Tx) error + func (o *Outbox) Persist(ctx context.Context, msg *event.Message, tx postgresdb.Tx) error + type Reader struct + func NewReader(log *zerolog.Logger, dbpool *pgxpool.Pool, cfg Config) *Reader + func (r *Reader) GetEventByID(ctx context.Context, eventID string, processingTimeout time.Duration) (*event.Message, error) + func (r *Reader) GetEvents(ctx context.Context, maxTries int, limit int, processingTimeout time.Duration) ([]event.Message, error) + func (r *Reader) UpdateEventMessage(ctx context.Context, event event.Message) error