本文整理汇总了Java中org.gudy.azureus2.core3.download.DownloadManager.getDiskManagerFileInfo方法的典型用法代码示例。如果您正苦于以下问题:Java DownloadManager.getDiskManagerFileInfo方法的具体用法?Java DownloadManager.getDiskManagerFileInfo怎么用?Java DownloadManager.getDiskManagerFileInfo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.gudy.azureus2.core3.download.DownloadManager
的用法示例。
在下文中一共展示了DownloadManager.getDiskManagerFileInfo方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: fileMustExist
import org.gudy.azureus2.core3.download.DownloadManager; //导入方法依赖的package包/类
public static boolean fileMustExist(DownloadManager download_manager, DiskManagerFileInfo file) {
Map resumeData = getResumeData( download_manager );
byte[] resumePieces = resumeData != null ? (byte[])resumeData.get("resume data") : null;
boolean sharesAnyNeededPieces = false;
DiskManagerFileInfo[] files = download_manager.getDiskManagerFileInfo();
int firstPiece = file.getFirstPieceNumber();
int lastPiece = file.getLastPieceNumber();
int firstFile = findFirstFileWithPieceN(firstPiece, files);
// we must sweep over the files, as any number of files could share the first/last piece of the file we're probing
for (int i = firstFile; i < files.length && !sharesAnyNeededPieces; i++)
{
DiskManagerFileInfo currentFile = files[i];
if(currentFile.getLastPieceNumber() < firstPiece)
continue;
if (currentFile.getIndex() == file.getIndex() && resumePieces != null && file.getStorageType() != DiskManagerFileInfo.ST_COMPACT && file.getStorageType() != DiskManagerFileInfo.ST_REORDER_COMPACT)
for (int j = firstPiece; j <= lastPiece && !sharesAnyNeededPieces; j++)
sharesAnyNeededPieces |= resumePieces[j] != PIECE_NOT_DONE;
if (currentFile.getFirstPieceNumber() > lastPiece)
break;
if (currentFile.getFirstPieceNumber() <= firstPiece && firstPiece <= currentFile.getLastPieceNumber())
sharesAnyNeededPieces |= !currentFile.isSkipped();
if (currentFile.getFirstPieceNumber() <= lastPiece && lastPiece <= currentFile.getLastPieceNumber())
sharesAnyNeededPieces |= !currentFile.isSkipped();
}
return sharesAnyNeededPieces;
}