Refactor downloads to use job-specific subdirectories

Organize downloaded files into per-job subdirectories under "downloads" instead of a flat structure. Update DownloadController and VideoService to read, write, and delete files within these job-specific directories. Add helper methods for directory management and improve logging. Update download/delete endpoints and result URLs to reflect the new structure. Clean up empty job directories after file deletion.
This commit is contained in:
Michal Vrba
2025-12-14 11:04:46 +01:00
parent 7c99721174
commit 2d2e855202
14 changed files with 1073 additions and 66 deletions
@@ -5,6 +5,7 @@ public class ProcessVideoRequest
public string? Url { get; set; }
public string? Format { get; set; } = "mp3";
public string? Quality { get; set; } = "128";
public string? SessionId { get; set; } // Add session ID support
}
public class ProcessVideoResponse
@@ -14,6 +15,7 @@ public class ProcessVideoResponse
public string? FileName { get; set; }
public string? DownloadUrl { get; set; }
public YouTubeVideoDetails? VideoDetails { get; set; }
public string? SessionId { get; set; } // Include session ID in response
}
public class DownloadProgress