Documentation
¶
Overview ¶
Package task provides storage operations for task management in the queue system.
Index ¶
- type GetTasksFilter
- type Storage
- func (s *Storage) AddTask(ctx context.Context, task *entity.Task) error
- func (s *Storage) CureTasks(ctx context.Context, unhealthStatus entity.TaskStatus, ...) ([]*entity.Task, error)
- func (s *Storage) DeleteTasks(ctx context.Context, statuses []entity.TaskStatus, ...) ([]*entity.Task, error)
- func (s *Storage) GetTask(ctx context.Context, id uuid.UUID) (*entity.Task, error)
- func (s *Storage) GetTasks(ctx context.Context, filter *GetTasksFilter, limit int64) ([]*entity.Task, error)
- func (s *Storage) GetTasksForProcessing(ctx context.Context, taskType entity.TaskType, limit int64) ([]*entity.Task, error)
- func (s *Storage) UpdateTask(ctx context.Context, taskID uuid.UUID, task *entity.Task) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GetTasksFilter ¶
type GetTasksFilter struct {
TaskType *entity.TaskType
Status *entity.TaskStatus
UpdatedAtTimeAgo *time.Duration
}
GetTasksFilter defines filtering criteria for task queries.
type Storage ¶
type Storage struct {
// contains filtered or unexported fields
}
Storage handles database operations for tasks.
func NewStorage ¶
NewStorage creates a new Storage instance with the provided database connection.
func (*Storage) CureTasks ¶ added in v0.0.2
func (s *Storage) CureTasks(ctx context.Context, unhealthStatus entity.TaskStatus, updatedAtTimeAgo time.Duration, limit int64) ([]*entity.Task, error)
CureTasks marks stuck tasks in the specified unhealthy status as errored within a transaction.
func (*Storage) DeleteTasks ¶ added in v0.0.2
func (s *Storage) DeleteTasks(ctx context.Context, statuses []entity.TaskStatus, updatedAtTimeAgo time.Duration) ([]*entity.Task, error)
DeleteTasks removes tasks with specified statuses that haven't been updated within the given time period.
func (*Storage) GetTasks ¶
func (s *Storage) GetTasks(ctx context.Context, filter *GetTasksFilter, limit int64) ([]*entity.Task, error)
GetTasks retrieves tasks matching the filter criteria with a specified limit.
Click to show internal directories.
Click to hide internal directories.