use of com.frostwire.bittorrent.BTEngineAdapter in project frostwire by frostwire.
the class TransferManager method loadTorrentsTask.
private void loadTorrentsTask() {
bittorrentDownloadsList.clear();
bittorrentDownloadsMap.clear();
final BTEngine btEngine = BTEngine.getInstance();
btEngine.setListener(new BTEngineAdapter() {
@Override
public void downloadAdded(BTEngine engine, BTDownload dl) {
String name = dl.getName();
if (name != null && name.contains("fetch_magnet")) {
return;
}
File savePath = dl.getSavePath();
if (savePath != null && savePath.toString().contains("fetch_magnet")) {
return;
}
UIBittorrentDownload uiBittorrentDownload = new UIBittorrentDownload(TransferManager.this, dl);
bittorrentDownloadsList.add(uiBittorrentDownload);
bittorrentDownloadsMap.put(dl.getInfoHash(), uiBittorrentDownload);
}
@Override
public void downloadUpdate(BTEngine engine, BTDownload dl) {
try {
BittorrentDownload bittorrentDownload = bittorrentDownloadsMap.get(dl.getInfoHash());
if (bittorrentDownload instanceof UIBittorrentDownload) {
UIBittorrentDownload bt = (UIBittorrentDownload) bittorrentDownload;
bt.updateUI(dl);
}
} catch (Throwable e) {
LOG.error("Error updating bittorrent download", e);
}
}
});
btEngine.restoreDownloads();
}
use of com.frostwire.bittorrent.BTEngineAdapter in project frostwire by frostwire.
the class DownloadManagerImpl method loadSavedDownloadsAndScheduleWriting.
public void loadSavedDownloadsAndScheduleWriting() {
try {
BTEngine engine = BTEngine.getInstance();
engine.setListener(new BTEngineAdapter() {
@Override
public void downloadAdded(BTEngine engine, BTDownload dl) {
if (engine == null || dl == null) {
return;
}
String name = dl.getName();
if (name == null || name.contains("fetch_magnet:")) {
return;
}
File savePath = dl.getSavePath();
if (savePath != null && savePath.toString().contains("fetch_magnet")) {
return;
}
// don't add frostwire update downloads to the download manager.
if (savePath != null) {
final File parentFile = savePath.getParentFile();
if (parentFile != null) {
if (parentFile.getAbsolutePath().equals(UpdateSettings.UPDATES_DIR.getAbsolutePath())) {
LOG.info("Update download, not adding to transfer manager: " + savePath);
return;
}
} else if (savePath.getAbsolutePath().equals(UpdateSettings.UPDATES_DIR.getAbsolutePath())) {
// save path must have been a root folder, like D:\, so no parent file.
LOG.info("Update download, not adding to transfer manager: " + savePath);
return;
}
}
addDownload(dl);
}
@Override
public void downloadUpdate(BTEngine engine, BTDownload dl) {
updateDownload(dl);
}
});
engine.restoreDownloads();
} catch (Throwable e) {
LOG.error("General error loading saved downloads", e);
}
}
Aggregations