|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.gudy.azureus2.core3.download.impl.DownloadManagerAdapter org.gudy.azureus2.core3.global.impl.GlobalManagerImpl
public class GlobalManagerImpl
Nested Class Summary | |
---|---|
class |
GlobalManagerImpl.Checker
|
Constructor Summary | |
---|---|
GlobalManagerImpl(AzureusCore core,
GlobalMangerProgressListener listener,
long existingTorrentLoadDelay)
|
Method Summary | |
---|---|
protected DownloadManager |
addDownloadManager(DownloadManager download_manager,
boolean save,
boolean notifyListeners)
|
DownloadManager |
addDownloadManager(String fileName,
byte[] optionalHash,
String savePath,
int initialState,
boolean persistent)
Create and add a Download Manager to the global list |
DownloadManager |
addDownloadManager(String torrent_file_name,
byte[] optionalHash,
String savePath,
int initialState,
boolean persistent,
boolean for_seeding,
DownloadManagerInitialisationAdapter _adapter)
Create and add a Download Manager to the global list |
DownloadManager |
addDownloadManager(String torrent_file_name,
byte[] optionalHash,
String savePath,
String saveFile,
int initialState,
boolean persistent,
boolean for_seeding,
DownloadManagerInitialisationAdapter _adapter)
Create and add a Download Manager to the global list |
DownloadManager |
addDownloadManager(String fileName,
String savePath)
Create and add a Download Manager to the global list |
void |
addDownloadManagerInitialisationAdapter(DownloadManagerInitialisationAdapter adapter)
Any adapters added will get a chance to see/set the initial state of downloads as they are added |
void |
addDownloadWillBeRemovedListener(GlobalManagerDownloadWillBeRemovedListener l)
Add a listener triggered when Download is about to be removed |
void |
addEventListener(GlobalManagerEventListener listener)
|
void |
addListener(GlobalManagerListener listener)
Add a Global Manager listener |
void |
addListener(GlobalManagerListener listener,
boolean trigger)
|
void |
canDownloadManagerBeRemoved(DownloadManager manager,
boolean remove_torrent,
boolean remove_data)
Determines whether a DownloadManager can be removed |
boolean |
canPauseDownload(DownloadManager manager)
|
boolean |
canPauseDownloads()
Indicates whether or not there are any downloads that can be paused. |
boolean |
canResumeDownloads()
Indicates whether or not there are any paused downloads to resume. |
protected void |
checkForceStart(boolean known_to_exist)
|
protected void |
checkSeedingOnlyState()
|
protected void |
checkSeedingOnlyStateSupport()
|
void |
clearNonPersistentDownloadState(byte[] hash)
|
protected void |
computeNATStatus()
|
boolean |
contains(DownloadManager manager)
|
int |
downloadManagerCount(boolean bCompleted)
Retrieve the number of download managers the global manager is managing. |
static Long[] |
enlargeLongArray(Long[] array,
int expandTo)
|
Map |
exportDownloadStateToMap(DownloadManager dm)
|
void |
fireGlobalManagerEvent(int type,
DownloadManager param)
|
void |
fixUpDownloadManagerPositions()
Verifies the positions of the DownloadManagers, filling in gaps and shifting duplicate IDs down if necessary. |
void |
generate(IndentWriter writer)
|
String |
getDisplayName(Taggable taggable)
|
protected DownloadManagerInitialisationAdapter |
getDMAdapter(DownloadManagerInitialisationAdapter adapter)
|
Object |
getDownloadHistoryManager()
|
DownloadManager |
getDownloadManager(HashWrapper hw)
Retrieve the DownloadManager associated with a hash |
DownloadManager |
getDownloadManager(TOTorrent torrent)
Retrieve the DownloadManager associated with a TOTorrent object |
List<DownloadManager> |
getDownloadManagers()
Retrieve a list of DownloadManager s that GlobalManager is handling |
int |
getIndexOf(DownloadManager manager)
Retrieve the index of a DownloadManager within the GlobalManager list retrieved via GlobalManager.getDownloadManagers() . |
MainlineDHTProvider |
getMainlineDHTProvider()
|
int |
getNATStatus()
See plugin ConnectionManager.NAT_ constants for return values |
int |
getPauseDownloadPeriodRemaining()
seconds remaining, 0 if not active |
List<Taggable> |
getResolvedTaggables()
|
long |
getResolverTaggableType()
|
GlobalManagerStats |
getStats()
Retrieve the Global Manager Statistics class |
long |
getTotalSwarmsPeerRate(boolean downloading,
boolean seeding)
|
TRTrackerScraper |
getTrackerScraper()
Retrieve the Tracker Scraper management class |
DownloadManager |
importDownloadStateFromMap(Map map)
|
protected void |
informDestroyed()
|
void |
informDestroyInitiated()
|
boolean |
isMoveableDown(DownloadManager manager)
Retrieve whether a DownloadManager can move down in the GlobalManager list |
boolean |
isMoveableUp(DownloadManager manager)
Retrieve whether a DownloadManager can move up in the GlobalManager list |
boolean |
isPaused(DownloadManager manager)
Retrieve whether a DownloadManager is in a paused state |
boolean |
isPotentiallySeedingOnly()
As for isSeedingOnly but includes queued seeds |
boolean |
isSeedingOnly()
Determines whether we are only seeding, and not currently downloading anything. |
String |
isSwarmMerging(DownloadManager dm)
|
DownloadManager |
loadDownload(Map mDownload,
int currentDownload,
int nbDownloads,
GlobalMangerProgressListener progress_listener,
boolean debug)
|
void |
loadExistingTorrentsNow(boolean async)
|
static void |
main(String[] args)
|
void |
moveDown(DownloadManager manager)
Move one DownloadManager down in the GlobalManager's list |
void |
moveEnd(DownloadManager[] manager)
Move a list of DownloadManagers to the end of the GlobalManager list |
void |
moveTo(DownloadManager manager,
int newPosition)
Move a Downloadmanager to a new position. |
void |
moveTop(DownloadManager[] manager)
Move a list of DownloadManagers to the top of the GlobalManager list |
void |
moveUp(DownloadManager manager)
Move one DownloadManager up in the GlobalManager's list |
boolean |
pauseDownload(DownloadManager manager)
Pause one DownloadManager |
void |
pauseDownloads()
Pauses (stops) all running downloads/seedings. |
protected void |
pauseDownloads(boolean tag_only)
|
void |
pauseDownloadsForPeriod(int seconds)
pause any non-paused downloads and auto-resume all downloads after n seconds |
void |
removeDownloadManager(DownloadManager manager)
Removes a DownloadManager from the global list, providing it can be removed (see #canDownloadManagerBeRemoved(DownloadManager) ) |
void |
removeDownloadManager(DownloadManager manager,
boolean remove_torrent,
boolean remove_data)
|
void |
removeDownloadManagerInitialisationAdapter(DownloadManagerInitialisationAdapter adapter)
|
void |
removeDownloadWillBeRemovedListener(GlobalManagerDownloadWillBeRemovedListener l)
Remove a listener triggered when Download is about to be removed |
void |
removeEventListener(GlobalManagerEventListener listener)
|
void |
removeListener(GlobalManagerListener listener)
Removes a Global Manager listener |
void |
requestAttention(String id)
|
Taggable |
resolveTaggable(String id)
|
void |
resumeDownload(DownloadManager manager)
Resume a previously paused DownloadManager |
void |
resumeDownloads()
Resumes (starts) all downloads paused by the previous pauseDownloads call. |
boolean |
resumeDownloads(boolean is_auto_resume)
Attempt to automatically resume downloads - request may be denied if manual override in effect |
boolean |
resumingDownload(DownloadManager manager)
This reports that a download is being resumed in order to remove it from the paused set Don't use this to actually resume a download, use resumeDownload ! |
protected void |
saveDownloads(boolean immediate)
|
void |
saveState()
|
protected void |
seedPieceRecheck()
|
protected boolean |
seedPieceRecheck(DownloadManager manager)
|
void |
setMainlineDHTProvider(MainlineDHTProvider provider)
Calling this method doesn't prepare Azureus to be DHT-ready, it is only used to store, or remove, a DHT provider - so that it can be globally accessible. |
protected void |
setSeedingOnlyState(boolean seeding,
boolean potentially_seeding)
|
void |
startAllDownloads()
Starts all downloads |
void |
stateChanged(DownloadManager manager,
int new_state)
|
void |
statsRequest(Map request,
Map reply)
|
void |
stopAllDownloads()
Stops all downloads without removing them |
protected void |
stopAllDownloads(boolean for_close)
|
void |
stopGlobalManager()
Puts GlobalManager in a stopped state. Used when closing down Azureus. |
Methods inherited from class org.gudy.azureus2.core3.download.impl.DownloadManagerAdapter |
---|
completionChanged, downloadComplete, filePriorityChanged, positionChanged |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public GlobalManagerImpl(AzureusCore core, GlobalMangerProgressListener listener, long existingTorrentLoadDelay)
Method Detail |
---|
public void loadExistingTorrentsNow(boolean async)
loadExistingTorrentsNow
in interface GlobalManager
public DownloadManager addDownloadManager(String fileName, String savePath)
GlobalManager
addDownloadManager
in interface GlobalManager
fileName
- location and name of torrent filesavePath
- path to write the data to
public DownloadManager addDownloadManager(String fileName, byte[] optionalHash, String savePath, int initialState, boolean persistent)
GlobalManager
addDownloadManager
in interface GlobalManager
fileName
- location and name of torrent filesavePath
- path to write the data toinitialState
- Initial state of download. See DownloadManager.STATE_*persistent
- Whether the download should be treated as persistent download
public DownloadManager addDownloadManager(String torrent_file_name, byte[] optionalHash, String savePath, int initialState, boolean persistent, boolean for_seeding, DownloadManagerInitialisationAdapter _adapter)
GlobalManager
addDownloadManager
in interface GlobalManager
torrent_file_name
- location and name of torrent filesavePath
- path to write the data toinitialState
- Initial state of download. See DownloadManager.STATE_*persistent
- Whether the download should be treated as persistent downloadfor_seeding
- Whether the manager should assume the torrent is
already complete and ready for seeding.
public DownloadManager addDownloadManager(String torrent_file_name, byte[] optionalHash, String savePath, String saveFile, int initialState, boolean persistent, boolean for_seeding, DownloadManagerInitialisationAdapter _adapter)
GlobalManager
addDownloadManager
in interface GlobalManager
torrent_file_name
- location and name of torrent filesavePath
- path to write the data toinitialState
- Initial state of download. See DownloadManager.STATE_*persistent
- Whether the download should be treated as persistent downloadfor_seeding
- Whether the manager should assume the torrent is
already complete and ready for seeding.
public void clearNonPersistentDownloadState(byte[] hash)
clearNonPersistentDownloadState
in interface GlobalManager
protected DownloadManager addDownloadManager(DownloadManager download_manager, boolean save, boolean notifyListeners)
public List<DownloadManager> getDownloadManagers()
GlobalManager
DownloadManager
s that GlobalManager is handling
getDownloadManagers
in interface GlobalManager
DownloadManager
spublic DownloadManager getDownloadManager(TOTorrent torrent)
GlobalManager
getDownloadManager
in interface GlobalManager
torrent
- Torrent to search for
public DownloadManager getDownloadManager(HashWrapper hw)
GlobalManager
getDownloadManager
in interface GlobalManager
hw
- Hash to search for
public void canDownloadManagerBeRemoved(DownloadManager manager, boolean remove_torrent, boolean remove_data) throws GlobalManagerDownloadRemovalVetoException
GlobalManager
canDownloadManagerBeRemoved
in interface GlobalManager
manager
- DownloadManager to check
GlobalManagerDownloadRemovalVetoException
public void removeDownloadManager(DownloadManager manager) throws GlobalManagerDownloadRemovalVetoException
GlobalManager
#canDownloadManagerBeRemoved(DownloadManager)
)
The DownloadManager will not be stopped if it is running. Scraping, however, will be turned off.
removeDownloadManager
in interface GlobalManager
manager
- DownloadManager to remove
GlobalManagerDownloadRemovalVetoException
public void removeDownloadManager(DownloadManager manager, boolean remove_torrent, boolean remove_data) throws GlobalManagerDownloadRemovalVetoException
removeDownloadManager
in interface GlobalManager
GlobalManagerDownloadRemovalVetoException
public void stopGlobalManager()
GlobalManager
stopGlobalManager
in interface GlobalManager
public void stopAllDownloads()
GlobalManager
stopAllDownloads
in interface GlobalManager
protected void stopAllDownloads(boolean for_close)
public void startAllDownloads()
startAllDownloads
in interface GlobalManager
public boolean pauseDownload(DownloadManager manager)
GlobalManager
pauseDownload
in interface GlobalManager
manager
- DownloadManager to pause
public void pauseDownloadsForPeriod(int seconds)
GlobalManager
pauseDownloadsForPeriod
in interface GlobalManager
public int getPauseDownloadPeriodRemaining()
GlobalManager
getPauseDownloadPeriodRemaining
in interface GlobalManager
public void pauseDownloads()
GlobalManager
pauseDownloads
in interface GlobalManager
protected void pauseDownloads(boolean tag_only)
public boolean canPauseDownload(DownloadManager manager)
public boolean isPaused(DownloadManager manager)
GlobalManager
isPaused
in interface GlobalManager
manager
- DownloadManager to query
public boolean canPauseDownloads()
GlobalManager
canPauseDownloads
in interface GlobalManager
public void resumeDownload(DownloadManager manager)
GlobalManager
resumeDownload
in interface GlobalManager
manager
- DownloadManager to resumepublic boolean resumingDownload(DownloadManager manager)
GlobalManager
resumingDownload
in interface GlobalManager
public void resumeDownloads()
GlobalManager
resumeDownloads
in interface GlobalManager
public boolean resumeDownloads(boolean is_auto_resume)
GlobalManager
resumeDownloads
in interface GlobalManager
public boolean canResumeDownloads()
GlobalManager
canResumeDownloads
in interface GlobalManager
public String isSwarmMerging(DownloadManager dm)
isSwarmMerging
in interface GlobalManager
public void saveState()
saveState
in interface GlobalManager
protected void saveDownloads(boolean immediate)
public DownloadManager loadDownload(Map mDownload, int currentDownload, int nbDownloads, GlobalMangerProgressListener progress_listener, boolean debug)
public static Long[] enlargeLongArray(Long[] array, int expandTo)
public Map exportDownloadStateToMap(DownloadManager dm)
exportDownloadStateToMap
in interface GlobalManager
public DownloadManager importDownloadStateFromMap(Map map)
importDownloadStateFromMap
in interface GlobalManager
public TRTrackerScraper getTrackerScraper()
GlobalManager
getTrackerScraper
in interface GlobalManager
public GlobalManagerStats getStats()
GlobalManager
getStats
in interface GlobalManager
public boolean contains(DownloadManager manager)
contains
in interface GlobalManager
public int getIndexOf(DownloadManager manager)
GlobalManager
GlobalManager.getDownloadManagers()
.
This is NOT the DownloadManager's position
getIndexOf
in interface GlobalManager
manager
- DownloadManger to find the index of
public boolean isMoveableUp(DownloadManager manager)
GlobalManager
isMoveableUp
in interface GlobalManager
manager
- DownloadManager to check
public int downloadManagerCount(boolean bCompleted)
GlobalManager
downloadManagerCount
in interface GlobalManager
bCompleted
- True: Return count of completed downloadspublic boolean isMoveableDown(DownloadManager manager)
GlobalManager
isMoveableDown
in interface GlobalManager
manager
- DownloadManager to check
public void moveUp(DownloadManager manager)
GlobalManager
moveUp
in interface GlobalManager
manager
- DownloadManager to move uppublic void moveDown(DownloadManager manager)
GlobalManager
moveDown
in interface GlobalManager
manager
- DownloadManager to move downpublic void moveTop(DownloadManager[] manager)
GlobalManager
moveTop
in interface GlobalManager
manager
- array list of DownloadManager objects to movepublic void moveEnd(DownloadManager[] manager)
GlobalManager
moveEnd
in interface GlobalManager
manager
- array list of DownloadManager objects to movepublic void moveTo(DownloadManager manager, int newPosition)
GlobalManager
moveTo
in interface GlobalManager
manager
- DownloadManager to movenewPosition
- position to placepublic void fixUpDownloadManagerPositions()
GlobalManager
This does not need to be called after MoveXXX, addDownloadManager, or removeDownloadManager functions.
fixUpDownloadManagerPositions
in interface GlobalManager
public long getResolverTaggableType()
getResolverTaggableType
in interface TaggableResolver
public Taggable resolveTaggable(String id)
resolveTaggable
in interface TaggableResolver
public List<Taggable> getResolvedTaggables()
getResolvedTaggables
in interface TaggableResolver
public String getDisplayName(Taggable taggable)
getDisplayName
in interface TaggableResolver
public void requestAttention(String id)
requestAttention
in interface TaggableResolver
protected void informDestroyed()
public void informDestroyInitiated()
public void addListener(GlobalManagerListener listener)
GlobalManager
addListener
in interface GlobalManager
listener
- Listener to addpublic void addListener(GlobalManagerListener listener, boolean trigger)
addListener
in interface GlobalManager
public void removeListener(GlobalManagerListener listener)
GlobalManager
removeListener
in interface GlobalManager
listener
- Listener to removepublic void addEventListener(GlobalManagerEventListener listener)
addEventListener
in interface GlobalManager
public void removeEventListener(GlobalManagerEventListener listener)
removeEventListener
in interface GlobalManager
public void fireGlobalManagerEvent(int type, DownloadManager param)
fireGlobalManagerEvent
in interface GlobalManager
public void addDownloadWillBeRemovedListener(GlobalManagerDownloadWillBeRemovedListener l)
GlobalManager
addDownloadWillBeRemovedListener
in interface GlobalManager
l
- Listener to addpublic void removeDownloadWillBeRemovedListener(GlobalManagerDownloadWillBeRemovedListener l)
GlobalManager
removeDownloadWillBeRemovedListener
in interface GlobalManager
l
- Listener to removepublic void stateChanged(DownloadManager manager, int new_state)
stateChanged
in interface DownloadManagerListener
stateChanged
in class DownloadManagerAdapter
protected void checkForceStart(boolean known_to_exist)
protected void checkSeedingOnlyState()
protected void checkSeedingOnlyStateSupport()
protected void setSeedingOnlyState(boolean seeding, boolean potentially_seeding)
public boolean isSeedingOnly()
GlobalManager
isSeedingOnly
in interface GlobalManager
public boolean isPotentiallySeedingOnly()
GlobalManager
isPotentiallySeedingOnly
in interface GlobalManager
public long getTotalSwarmsPeerRate(boolean downloading, boolean seeding)
protected void computeNATStatus()
public int getNATStatus()
GlobalManager
getNATStatus
in interface GlobalManager
protected void seedPieceRecheck()
protected boolean seedPieceRecheck(DownloadManager manager)
protected DownloadManagerInitialisationAdapter getDMAdapter(DownloadManagerInitialisationAdapter adapter)
public void addDownloadManagerInitialisationAdapter(DownloadManagerInitialisationAdapter adapter)
GlobalManager
addDownloadManagerInitialisationAdapter
in interface GlobalManager
public void removeDownloadManagerInitialisationAdapter(DownloadManagerInitialisationAdapter adapter)
removeDownloadManagerInitialisationAdapter
in interface GlobalManager
public Object getDownloadHistoryManager()
getDownloadHistoryManager
in interface GlobalManager
public void generate(IndentWriter writer)
generate
in interface AEDiagnosticsEvidenceGenerator
public static void main(String[] args)
public void setMainlineDHTProvider(MainlineDHTProvider provider)
GlobalManager
setMainlineDHTProvider
in interface GlobalManager
public MainlineDHTProvider getMainlineDHTProvider()
getMainlineDHTProvider
in interface GlobalManager
public void statsRequest(Map request, Map reply)
statsRequest
in interface GlobalManager
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |