if (!network.isPresent()) {
return;
}
+ eventBus.post(new GenericMessage("a"));
Set<Download> openDownloads = downloads.values().stream()
.filter(download -> download.bot().name().equalsIgnoreCase(dccSendReceived.source().nick().orNull()))
.filter(download -> download.dccReceiver() == null)
.collect(toSet());
+ eventBus.post(new GenericMessage("b"));
if (openDownloads.isEmpty()) {
/* I don't think we requested this. */
eventBus.post(new GenericMessage(format("Ignoring offer for %s, no open download from %s.", dccSendReceived.filename(), dccSendReceived.source())));
return;
}
+ eventBus.post(new GenericMessage("c"));
/* check if it’s already downloading. */
if (downloads.values().stream().anyMatch(download -> download.filename().equals(dccSendReceived.filename()) && download.dccReceiver() != null)) {
eventBus.post(new GenericMessage(format("Ignoring offer for %s, it’s already being downloaded.", dccSendReceived.filename())));
return;
}
+ eventBus.post(new GenericMessage("d"));
Download download = openDownloads.stream()
.filter(it -> it.filename().equals(dccSendReceived.filename()))
.findFirst()
.orElse(openDownloads.iterator().next());
+ eventBus.post(new GenericMessage("e"));
eventBus.post(new GenericMessage(format("Downloading %s from %s as %s.", dccSendReceived.filename(), dccSendReceived.source(), download.filename())));
/* check if the file already exists. */