Only store the failed downloads.
[xudocci.git] / src / main / java / net / pterodactylus / xdcc / main / Main.java
index 6d6d849..0033247 100644 (file)
@@ -20,6 +20,9 @@ package net.pterodactylus.xdcc.main;
 import java.io.File;
 import java.io.InputStreamReader;
 import java.io.OutputStreamWriter;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.concurrent.CopyOnWriteArraySet;
 import java.util.concurrent.Executors;
 import java.util.logging.ConsoleHandler;
 import java.util.logging.Formatter;
@@ -30,12 +33,11 @@ import java.util.logging.Logger;
 import net.pterodactylus.irc.Connection;
 import net.pterodactylus.xdcc.core.Core;
 import net.pterodactylus.xdcc.data.Channel;
+import net.pterodactylus.xdcc.data.Download;
 import net.pterodactylus.xdcc.data.Network;
 import net.pterodactylus.xdcc.data.Network.NetworkBuilder;
 import net.pterodactylus.xdcc.data.Network.ServerBuilder;
 import net.pterodactylus.xdcc.ui.stdin.CommandReader;
-import net.pterodactylus.xdcc.ui.stdin.DownloadFailure;
-import net.pterodactylus.xdcc.ui.stdin.DownloadFailures;
 import net.pterodactylus.xdcc.ui.stdin.NetworkAdapter;
 
 import com.google.common.eventbus.AsyncEventBus;
@@ -97,13 +99,13 @@ public class Main {
                        }
                }
 
-               DownloadFailures downloadFailures = new DownloadFailures();
+               Collection<Download> failedDownloads = new CopyOnWriteArraySet<>();
 
-               CommandReader commandReader = new CommandReader(core, new InputStreamReader(System.in, "UTF-8"), new OutputStreamWriter(System.out, "UTF-8"), downloadFailures);
+               CommandReader commandReader = new CommandReader(core, new InputStreamReader(System.in, "UTF-8"), new OutputStreamWriter(System.out, "UTF-8"), failedDownloads);
                commandReader.start();
                eventBus.register(commandReader);
 
-               NetworkAdapter networkAcceptor = new NetworkAdapter(eventBus, (reader, writer) -> new CommandReader(core, reader, writer, downloadFailures), configuration.getTelnetPort());
+               NetworkAdapter networkAcceptor = new NetworkAdapter(eventBus, (reader, writer) -> new CommandReader(core, reader, writer, failedDownloads), configuration.getTelnetPort());
                networkAcceptor.start();
 
                core.start();