template-monorepo/internal/model/notification/domain/repository/retry_queue.go

14 lines
394 B
Go
Raw Permalink Normal View History

package repository
import (
"context"
domusecase "gateway/internal/model/notification/domain/usecase"
)
// RetryQueue schedules async notification delivery (Redis ZSET: score = run_at_unix_ms).
type RetryQueue interface {
Schedule(ctx context.Context, runAtMs int64, job *domusecase.RetryJob) error
ClaimDue(ctx context.Context, nowMs int64, limit int) ([]*domusecase.RetryJob, error)
}