How gourusaiteja1291-beep/task-queue works
This Spring Boot service accepts task submissions, stores them as PENDING, and returns task IDs without waiting for execution. A scheduled worker claims pending tasks, dispatches email, CSV import, JSON product import, or report-generation work, then records completion or failure; clients can retrieve tasks and filter by status. CSV and JSON imports can also persist validated products. The README documents these capabilities, while the sampled worker source confirms their implementation; external integrations beyond local CSV files and PostgreSQL are not shown.
Main entry points: TaskWorker.java Scheduled Worker · TaskController.java Task Controller · TaskRepository.java Task Repository · TaskService.java Task Service
Components 16
Task API
- Task Controller
src/main/java/com/taskqueue/task_queue/TaskController.java - Task Service
src/main/java/com/taskqueue/task_queue/TaskService.java
Background Processing
- Application Scheduler
src/main/java/com/taskqueue/task_queue/TaskQueueApplication.java - Scheduled Worker
src/main/java/com/taskqueue/task_queue/TaskWorker.java - Email Handler
src/main/java/com/taskqueue/task_queue/TaskWorker.java - CSV Import
src/main/java/com/taskqueue/task_queue/TaskWorker.java - JSON Import
src/main/java/com/taskqueue/task_queue/TaskWorker.java - Report Handler
src/main/java/com/taskqueue/task_queue/TaskWorker.java
Persistence
- Task Repository
src/main/java/com/taskqueue/task_queue/TaskRepository.java - Task Entity
src/main/java/com/taskqueue/task_queue/Task.java - PostgreSQL Tasks
- Product Repository
src/main/java/com/taskqueue/task_queue/ProductRepository.java - Product Entity
src/main/java/com/taskqueue/task_queue/Product.java - PostgreSQL Products
Other components
- Client
- Local CSV File
Connections 14
- Client → Task Controller: submits or queries
- Task Controller → Task Service: delegates
- Task Service → Task Repository: saves and queries
- Task Repository → PostgreSQL Tasks: reads and writes
- Task Controller → Client: returns task data
- Application Scheduler → Scheduled Worker: enables scheduling
- Scheduled Worker → Task Repository: fetches and updates
- Scheduled Worker → Email Handler: dispatches
- Scheduled Worker → CSV Import: dispatches
- Scheduled Worker → JSON Import: dispatches
- Scheduled Worker → Report Handler: dispatches
- Scheduled Worker → Local CSV File: reads path from
- Scheduled Worker → Product Repository: saves imported products
- Product Repository → PostgreSQL Products: writes products