diff options
| author | Pinapelz <yukais@pinapelz.com> | 2026-05-14 01:15:04 -0700 |
|---|---|---|
| committer | Pinapelz <yukais@pinapelz.com> | 2026-05-14 01:20:32 -0700 |
| commit | f140a977dd16b8a5357fccb136b16a1f4195cfe6 (patch) | |
| tree | 5a5d0639a089b6deb160655aa1bee23a10fb68e4 /src/main/java/Main.java | |
| parent | 34606cd95856449bdb8dc3a5d3e0ff823bb6af4e (diff) | |
add filename override for time-range videos
Diffstat (limited to 'src/main/java/Main.java')
| -rw-r--r-- | src/main/java/Main.java | 33 |
1 files changed, 21 insertions, 12 deletions
diff --git a/src/main/java/Main.java b/src/main/java/Main.java index 0d1ef41..e7c187f 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -17,6 +17,12 @@ import javax.swing.text.DefaultCaret; import static UI.Modal.chooseBrowserType;
import static UI.Modal.showTextFileChooser;
+class DownloadTask {
+ String url = "";
+ String range = "";
+ String filename = "";
+
+}
public class Main extends JFrame {
private static String completedDir;
@@ -96,12 +102,19 @@ public class Main extends JFrame { String browser = configuration.get("browser");
int totalSongs = songs.size();
int songsProcessed = 0;
-
+ Downloader downloader = new Downloader(completedDir, outputArea);
for (String line : songs) {
- System.out.println(line);
- Downloader downloader = new Downloader(completedDir, outputArea);
+ DownloadTask task = new DownloadTask();
+ String[] parts = line.split(",");
+ task.url = parts[0];
+ if (parts.length > 1) {
+ task.range = parts[1].trim();
+ }
+ if (parts.length > 2) {
+ task.filename = parts[2].trim();
+ }
String videoId = extractVideoId(line);
- if(downloader.videoIdAlreadyDownloaded(videoId) && !line.contains(",")){ // if video has a time range we assume its on purpose and not a duplicate
+ if(downloader.videoIdAlreadyDownloaded(videoId) && !task.range.isEmpty()){ // if video has a time range we assume its on purpose and not a duplicate
int continueConfirm = JOptionPane.showConfirmDialog(
null,
"A file with the same video ID (" + videoId + ") already exists in the output directoy. Download anyways?",
@@ -113,23 +126,19 @@ public class Main extends JFrame { continue;
}
}
- boolean success = false;
+ boolean success = false;
for (int attempt = 1; attempt <= 3; attempt++) {
try {
if (line.contains(",")) {
- String[] parts = line.split(",");
- String url = parts[0];
- String stamp = parts[1];
-
- if (downloader.download(url, stamp, browser)) {
+ if (downloader.download(task.url, task.range, task.filename, browser)) {
success = true;
break;
} else {
- System.out.println("Attempt " + attempt + " failed for " + url);
+ System.out.println("Attempt " + attempt + " failed for " + task.url);
}
} else {
- if (downloader.download(line, browser)) {
+ if (downloader.download(task.url, task.filename, browser)) {
success = true;
break;
} else {
|
