|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.aelitis.azureus.core.lws.LWSDiskManager
public class LWSDiskManager
| Nested Class Summary | |
|---|---|
protected static class |
LWSDiskManager.sePiece
|
| Nested classes/interfaces inherited from interface org.gudy.azureus2.core3.disk.DiskManager |
|---|
DiskManager.GettingThere, DiskManager.OperationStatus |
| Field Summary |
|---|
| Fields inherited from interface org.gudy.azureus2.core3.disk.DiskManager |
|---|
ALLOCATING, BLOCK_SIZE, BLOCK_SIZE_KB, CHECKING, ET_INSUFFICIENT_SPACE, ET_NONE, ET_OTHER, FAULTY, INITIALIZING, READY |
| Constructor Summary | |
|---|---|
protected |
LWSDiskManager(LightWeightSeed _lws,
File _save_file)
|
| Method Summary | |
|---|---|
void |
accessModeChanged(DiskManagerFileInfoImpl file,
int old_mode,
int new_mode)
|
void |
addListener(DiskManagerListener l)
|
boolean |
checkBlockConsistencyForHint(String originator,
int pieceNumber,
int offset,
int length)
|
boolean |
checkBlockConsistencyForRead(String originator,
boolean peer_request,
int pieceNumber,
int offset,
int length)
method for checking that the block details are sensible |
boolean |
checkBlockConsistencyForWrite(String originator,
int pieceNumber,
int offset,
DirectByteBuffer data)
method for checking that the block details are sensible |
DiskManagerCheckRequest |
createCheckRequest(int pieceNumber,
Object user_data)
Create a request to check a particular piece |
DiskManagerReadRequest |
createReadRequest(int pieceNumber,
int offset,
int length)
|
DiskManagerWriteRequest |
createWriteRequest(int pieceNumber,
int offset,
DirectByteBuffer data,
Object user_data)
|
void |
downloadEnded(DiskManager.OperationStatus op_status)
|
void |
downloadRemoved()
|
void |
enqueueCheckRequest(DiskManagerCheckRequest request,
DiskManagerCheckRequestListener listener)
enqueue an asynchronous single piece check |
void |
enqueueCompleteRecheckRequest(DiskManagerCheckRequest request,
DiskManagerCheckRequestListener listener)
recheck the entire torrent asynchronously, reporting each piece to the listener |
void |
enqueueReadRequest(DiskManagerReadRequest request,
DiskManagerReadRequestListener listener)
Enqueue an async disk read request. |
void |
enqueueWriteRequest(DiskManagerWriteRequest request,
DiskManagerWriteRequestListener listener)
enqueue an async write request |
boolean |
filesExist()
|
void |
generateEvidence(IndentWriter writer)
|
long |
getAllocated()
|
int |
getCacheMode()
|
protected DMChecker |
getChecker()
|
int |
getCompleteRecheckStatus()
returns -1 if no recheck in progress, percentage complete in 1000 notation otherwise |
DiskAccessController |
getDiskAccessController()
|
DownloadManagerState |
getDownloadState()
|
String |
getErrorMessage()
|
int |
getErrorType()
|
protected DiskManagerFileInfoImpl[] |
getFileInfo(DMPieceMapperFile[] pm_files,
File save_location)
|
DiskManagerFileInfo[] |
getFiles()
|
DiskManagerFileInfoSet |
getFileSet()
|
String |
getInternalName()
|
int |
getLastPieceLength()
|
int |
getMoveProgress()
When a download's data is moving (for completion or removal events) this gives the progress in 1000 notation. |
String |
getName()
|
int |
getNbPieces()
|
int |
getPercentDone()
Get the percentage done during checking, allocation or initializing |
int |
getPercentDoneExcludingDND()
|
DiskManagerPiece |
getPiece(int index)
|
byte[] |
getPieceHash(int piece_number)
|
int |
getPieceLength()
|
int |
getPieceLength(int piece_number)
|
DMPieceList |
getPieceList(int piece_number)
|
DMPieceMap |
getPieceMap()
DON'T CACHE the DMPieceMap - as it is designed to be discarded when not in use |
DiskManagerPiece[] |
getPieces()
|
long |
getPriorityChangeMarker()
|
long[] |
getReadStats()
|
DiskManagerRecheckScheduler |
getRecheckScheduler()
|
long |
getRemaining()
Get remaining bytes to completion *including* DND files |
long |
getRemainingExcludingDND()
|
File |
getSaveLocation()
|
long |
getSizeExcludingDND()
|
int |
getState()
|
String |
getStorageType(int fileIndex)
|
String[] |
getStorageTypes()
|
TOTorrent |
getTorrent()
|
long |
getTotalLength()
|
boolean |
hasListener(DiskManagerListener l)
|
boolean |
hasOutstandingCheckRequestForPiece(int piece_number)
|
boolean |
hasOutstandingReadRequestForPiece(int piece_number)
|
boolean |
hasOutstandingWriteRequestForPiece(int piece_number)
|
boolean |
isDone(int piece_num)
|
boolean |
isInteresting(int piece_num)
|
boolean |
isStopped()
|
void |
moveDataFiles(File new_parent_dir,
String new_name,
DiskManager.OperationStatus op_status)
|
void |
priorityChanged(DiskManagerFileInfo file)
|
DirectByteBuffer |
readBlock(int pieceNumber,
int offset,
int length)
|
void |
removeListener(DiskManagerListener l)
|
void |
saveResumeData(boolean interim_save)
|
void |
saveState()
Save the individual file priorities map to DownloadManager.getData( "file_priorities" ). |
void |
setAllocated(long num)
|
void |
setFailed(DiskManagerFileInfo file,
String reason)
|
void |
setFailed(String reason)
Stops the disk manager and informs the download manager that things have gone wrong. |
void |
setPercentDone(int num)
|
void |
setPieceCheckingEnabled(boolean enabled)
|
void |
setPieceDone(DiskManagerPieceImpl dmPiece,
boolean done)
|
void |
skippedFileSetChanged(DiskManagerFileInfo file)
|
void |
start()
Start checking/allocating |
boolean |
stop(boolean closing)
Stop can go async if the download is in a 'starting' state - if so this method returns true |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
protected LWSDiskManager(LightWeightSeed _lws,
File _save_file)
| Method Detail |
|---|
public String getName()
public int getCacheMode()
getCacheMode in interface DiskManagerpublic long[] getReadStats()
getReadStats in interface DiskManagerpublic void start()
DiskManager
start in interface DiskManager
protected DiskManagerFileInfoImpl[] getFileInfo(DMPieceMapperFile[] pm_files,
File save_location)
public void setPieceDone(DiskManagerPieceImpl dmPiece,
boolean done)
setPieceDone in interface DiskManagerHelperpublic boolean stop(boolean closing)
DiskManager
stop in interface DiskManagerpublic boolean isStopped()
isStopped in interface DiskManagerpublic boolean filesExist()
filesExist in interface DiskManager
public DiskManagerWriteRequest createWriteRequest(int pieceNumber,
int offset,
DirectByteBuffer data,
Object user_data)
createWriteRequest in interface DiskManager
public void enqueueWriteRequest(DiskManagerWriteRequest request,
DiskManagerWriteRequestListener listener)
DiskManager
enqueueWriteRequest in interface DiskManagerpublic boolean hasOutstandingWriteRequestForPiece(int piece_number)
hasOutstandingWriteRequestForPiece in interface DiskManagerpublic boolean hasOutstandingReadRequestForPiece(int piece_number)
hasOutstandingReadRequestForPiece in interface DiskManagerpublic boolean hasOutstandingCheckRequestForPiece(int piece_number)
hasOutstandingCheckRequestForPiece in interface DiskManager
public DirectByteBuffer readBlock(int pieceNumber,
int offset,
int length)
readBlock in interface DiskManager
public DiskManagerReadRequest createReadRequest(int pieceNumber,
int offset,
int length)
createReadRequest in interface DiskManager
public void enqueueReadRequest(DiskManagerReadRequest request,
DiskManagerReadRequestListener listener)
DiskManager
enqueueReadRequest in interface DiskManager
public DiskManagerCheckRequest createCheckRequest(int pieceNumber,
Object user_data)
DiskManager
createCheckRequest in interface DiskManagerpieceNumber - -1 for a complete recheck request
public void enqueueCheckRequest(DiskManagerCheckRequest request,
DiskManagerCheckRequestListener listener)
DiskManager
enqueueCheckRequest in interface DiskManager
public void enqueueCompleteRecheckRequest(DiskManagerCheckRequest request,
DiskManagerCheckRequestListener listener)
DiskManager
enqueueCompleteRecheckRequest in interface DiskManagerpublic void setPieceCheckingEnabled(boolean enabled)
setPieceCheckingEnabled in interface DiskManagerpublic void saveResumeData(boolean interim_save)
saveResumeData in interface DiskManagerpublic DiskManagerPiece[] getPieces()
getPieces in interface DiskManagerpublic DiskManagerPiece getPiece(int index)
getPiece in interface DiskManagerpublic boolean isInteresting(int piece_num)
isInteresting in interface DiskManagerpublic boolean isDone(int piece_num)
isDone in interface DiskManagerpublic int getNbPieces()
getNbPieces in interface DiskManagerpublic DiskManagerFileInfo[] getFiles()
getFiles in interface DiskManagerpublic DiskManagerFileInfoSet getFileSet()
getFileSet in interface DiskManagerpublic int getState()
getState in interface DiskManagerpublic long getTotalLength()
getTotalLength in interface DiskManagerpublic int getPieceLength()
getPieceLength in interface DiskManagerpublic int getPieceLength(int piece_number)
getPieceLength in interface DiskManagerpublic int getLastPieceLength()
public long getRemaining()
DiskManager
getRemaining in interface DiskManagerpublic long getRemainingExcludingDND()
getRemainingExcludingDND in interface DiskManagerpublic int getPercentDone()
DiskManager
getPercentDone in interface DiskManagerpublic int getPercentDoneExcludingDND()
getPercentDoneExcludingDND in interface DiskManagerpublic long getSizeExcludingDND()
getSizeExcludingDND in interface DiskManagerpublic String getErrorMessage()
getErrorMessage in interface DiskManagerpublic int getErrorType()
getErrorType in interface DiskManagerpublic void downloadEnded(DiskManager.OperationStatus op_status)
downloadEnded in interface DiskManager
public void moveDataFiles(File new_parent_dir,
String new_name,
DiskManager.OperationStatus op_status)
moveDataFiles in interface DiskManagerpublic int getCompleteRecheckStatus()
DiskManager
getCompleteRecheckStatus in interface DiskManagerpublic int getMoveProgress()
DiskManager
getMoveProgress in interface DiskManager
public boolean checkBlockConsistencyForWrite(String originator,
int pieceNumber,
int offset,
DirectByteBuffer data)
DiskManager
checkBlockConsistencyForWrite in interface DiskManager
public boolean checkBlockConsistencyForRead(String originator,
boolean peer_request,
int pieceNumber,
int offset,
int length)
DiskManager
checkBlockConsistencyForRead in interface DiskManager
public boolean checkBlockConsistencyForHint(String originator,
int pieceNumber,
int offset,
int length)
checkBlockConsistencyForHint in interface DiskManagerpublic void addListener(DiskManagerListener l)
addListener in interface DiskManagerpublic void removeListener(DiskManagerListener l)
removeListener in interface DiskManagerpublic boolean hasListener(DiskManagerListener l)
hasListener in interface DiskManagerpublic void saveState()
DiskManager
saveState in interface DiskManagerpublic DiskAccessController getDiskAccessController()
getDiskAccessController in interface DiskManagerHelperpublic DMPieceMap getPieceMap()
DiskManager
getPieceMap in interface DiskManagerpublic DMPieceList getPieceList(int piece_number)
getPieceList in interface DiskManagergetPieceList in interface DiskManagerHelperprotected DMChecker getChecker()
public byte[] getPieceHash(int piece_number)
throws TOTorrentException
getPieceHash in interface DiskManagerHelperTOTorrentExceptionpublic DiskManagerRecheckScheduler getRecheckScheduler()
getRecheckScheduler in interface DiskManagerHelperpublic void downloadRemoved()
downloadRemoved in interface DiskManagerpublic void setFailed(String reason)
DiskManagerHelper
setFailed in interface DiskManagerHelper
public void setFailed(DiskManagerFileInfo file,
String reason)
setFailed in interface DiskManagerHelperpublic long getAllocated()
getAllocated in interface DiskManagerHelperpublic void setAllocated(long num)
setAllocated in interface DiskManagerHelperpublic void setPercentDone(int num)
setPercentDone in interface DiskManagerHelperpublic TOTorrent getTorrent()
getTorrent in interface DiskManagergetTorrent in interface DiskManagerHelperpublic String[] getStorageTypes()
getStorageTypes in interface DiskManagerHelperpublic String getStorageType(int fileIndex)
getStorageType in interface DiskManagerHelper
public void accessModeChanged(DiskManagerFileInfoImpl file,
int old_mode,
int new_mode)
accessModeChanged in interface DiskManagerHelperpublic void skippedFileSetChanged(DiskManagerFileInfo file)
skippedFileSetChanged in interface DiskManagerHelperpublic void priorityChanged(DiskManagerFileInfo file)
priorityChanged in interface DiskManagerHelperpublic File getSaveLocation()
getSaveLocation in interface DiskManagerpublic String getInternalName()
getInternalName in interface DiskManagerHelperpublic DownloadManagerState getDownloadState()
getDownloadState in interface DiskManagerHelperpublic long getPriorityChangeMarker()
getPriorityChangeMarker in interface DiskManagerpublic void generateEvidence(IndentWriter writer)
generateEvidence in interface DiskManager
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||