queue library

Classes

BaseQueueDriver
Abstract base driver with common functionality
ConditionalMiddleware
Conditional middleware - only run if condition is met
DeduplicationMiddleware
Prevents duplicate job execution within time window
DriverConfig
Configuration for queue drivers
ErrorHandlingMiddleware
Error handling middleware
FailedJobHandler
Handler for managing failed jobs and retry logic
FileStorageDriver
Persistent file-based queue driver
HookMiddleware
Before/After hook middleware
InMemoryDeadLetterQueue
In-memory implementation of Dead Letter Queue
InMemoryDriver
High-performance in-memory queue driver
InMemoryPriorityQueueDriver
In-memory priority queue driver
JobContext
Job context with metadata
PrioritizedJob
Represents a job with priority and metadata
PriorityQueue<T extends Comparable<T>>
Priority queue implementation using heap
PriorityQueueMetrics
Priority queue statistics and monitoring
QueueConfigLoader
Implementation of queue configuration loader. Handles loading queue configuration and initializing drivers.
QueueDriverRegistry
Registry for managing queue drivers. Provides centralized registration and resolution of queue drivers.
QueueJobRegistry
Registry for queue job types to enable deserialization
QueueLoggingMiddleware
Logging middleware
QueueManager
Queue manager that handles job dispatch and processing
QueueMetrics
Comprehensive queue metrics with detailed statistics
QueueMiddlewarePipeline
Middleware pipeline for queue jobs
QueueWorker
Enhanced queue worker with timeout enforcement and graceful shutdown
QueueWorkerConfig
Configuration for enhanced queue worker behavior.
QueueWorkerPool
Worker pool for concurrent job processing
QueueWorkerPoolStats
Statistics and monitoring for enhanced queue operations
RedisStorageDriver
Production-ready Redis queue driver
RetryMiddleware
Retry middleware
SerializableQueueJob
Base class for serializable jobs that provides common patterns
SynchronousDriver
Synchronous queue driver that executes jobs immediately
TimeoutMiddleware
Timeout middleware
TimingMiddleware
Timing middleware

Enums

JobPriority
Job priority levels
JobStatus
Job status enumeration

Mixins

SerializableJob
Mixin for jobs that need to be serialized (for file/Redis drivers)

Extensions

PriorityQueueJob on QueueJob
Extension to add priority to jobs

Typedefs

JobFactory = QueueJob Function(Map<String, dynamic> json)
Factory function type for creating jobs from JSON