use of com.frostwire.transfers.TransferItem in project frostwire by frostwire.
the class BTDownload method getItems.
@Override
public List<TransferItem> getItems() {
ArrayList<TransferItem> items = new ArrayList<>();
if (th.isValid()) {
TorrentInfo ti = th.torrentFile();
if (ti != null && ti.isValid()) {
FileStorage fs = ti.files();
int numFiles = ti.numFiles();
for (int i = 0; i < numFiles; i++) {
BTDownloadItem item = new BTDownloadItem(th, i, fs.filePath(i), fs.fileSize(i), piecesTracker);
items.add(item);
}
if (piecesTracker != null) {
int numPieces = ti.numPieces();
// perform piece complete check
for (int i = 0; i < numPieces; i++) {
if (th.havePiece(i)) {
piecesTracker.setComplete(i, true);
}
}
}
}
}
return items;
}
use of com.frostwire.transfers.TransferItem in project frostwire by frostwire.
the class TransferDetailDetailsFragment method updateComponents.
@Override
protected void updateComponents() {
if (uiBittorrentDownload != null) {
// ensureComponentsReferenced();
BTDownload btDL = uiBittorrentDownload.getDl();
if (onCopyToClipboardListener == null) {
onCopyToClipboardListener = new CopyToClipboardOnClickListener(uiBittorrentDownload);
}
// static data for this download is done only once
if ("".equals(storagePath.getText())) {
storagePath.setText(uiBittorrentDownload.getSavePath().getAbsolutePath());
}
if ("".equals(totalSize.getText())) {
totalSize.setText(UIUtils.getBytesInHuman(uiBittorrentDownload.getSize()));
}
if ("".equals(numberOfFiles.getText())) {
List<TransferItem> items = uiBittorrentDownload.getItems();
int fileCount = items == null ? 0 : items.size();
numberOfFiles.setText(fileCount + "");
}
if ("".equals(hash.getText())) {
hash.setText(uiBittorrentDownload.getInfoHash());
hash.setOnClickListener(onCopyToClipboardListener);
hashCopyButton.setOnClickListener(onCopyToClipboardListener);
}
if ("".equals(magnet.getText())) {
magnet.setText(uiBittorrentDownload.magnetUri());
magnet.setOnClickListener(onCopyToClipboardListener);
magnetCopyButton.setOnClickListener(onCopyToClipboardListener);
}
if ("".equals(createdOn.getText())) {
createdOn.setText(DateUtils.formatDateTime(getActivity(), uiBittorrentDownload.getCreated().getTime(), DateUtils.FORMAT_ABBREV_MONTH | DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_SHOW_YEAR));
}
if ("".equals(comment.getText())) {
TorrentInfo torrentInfo = uiBittorrentDownload.getDl().getTorrentHandle().torrentFile();
String torrentComment = torrentInfo.comment();
if (torrentComment != null && !"".equals(torrentComment)) {
comment.setText(torrentComment);
} else {
comment.setText(" ");
View view = findView(comment.getRootView(), R.id.fragment_transfer_detail_details_comment_container);
view.setVisibility(View.GONE);
}
}
if (onSequentialDownloadCheckboxCheckedListener == null) {
onSequentialDownloadCheckboxCheckedListener = new SequentialDownloadCheckboxCheckedListener(uiBittorrentDownload);
}
sequentialDownloadCheckBox.setOnCheckedChangeListener(null);
sequentialDownloadCheckBox.setChecked(btDL.isSequentialDownload());
sequentialDownloadCheckBox.setOnCheckedChangeListener(onSequentialDownloadCheckboxCheckedListener);
if (onRateLimitClickListener == null) {
onRateLimitClickListener = new OnSpeedLimitClickListener(uiBittorrentDownload, this, getFragmentManager());
downloadSpeedLimit.setOnClickListener(onRateLimitClickListener);
downloadSpeedLimitArrow.setOnClickListener(onRateLimitClickListener);
uploadSpeedLimit.setOnClickListener(onRateLimitClickListener);
uploadSpeedLimitArrow.setOnClickListener(onRateLimitClickListener);
}
int downloadRateLimit = btDL.getDownloadRateLimit();
int uploadRateLimit = btDL.getUploadRateLimit();
if (downloadRateLimit > 0) {
downloadSpeedLimit.setText(UIUtils.getBytesInHuman(downloadRateLimit) + "/s");
} else if (downloadRateLimit == DOWNLOAD_UNLIMITED_VALUE || downloadRateLimit == -1) {
downloadSpeedLimit.setText(R.string.unlimited);
}
if (uploadRateLimit > 0) {
uploadSpeedLimit.setText(UIUtils.getBytesInHuman(uploadRateLimit) + "/s");
} else if (uploadRateLimit == UPLOAD_UNLIMITED_VALUE || uploadRateLimit == -1) {
uploadSpeedLimit.setText(R.string.unlimited);
}
}
}
Aggregations