Package com.biglybt.core.download.impl
Class DownloadManagerStateImpl
- java.lang.Object
-
- com.biglybt.core.download.impl.DownloadManagerStateImpl
-
- All Implemented Interfaces:
ParameterListener
,DownloadManagerState
public class DownloadManagerStateImpl extends java.lang.Object implements DownloadManagerState, ParameterListener
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
DownloadManagerStateImpl.CachedStateWrapper
protected static class
DownloadManagerStateImpl.nullState
-
Field Summary
-
Fields inherited from interface com.biglybt.core.download.DownloadManagerState
AT_AGGREGATE_SCRAPE_CACHE, AT_AVAIL_BAD_TIME, AT_CANONICAL_SD_DMAP, AT_CATEGORY, AT_COMPLETE_LAST_TIME, AT_DISPLAY_NAME, AT_DL_FILE_ALERTS, AT_DND_PREFIX, AT_DND_SUBFOLDER, AT_FILE_ALLOC_REQUEST, AT_FILE_ALLOC_STRATEGY, AT_FILE_DOWNLOADED, AT_FILE_FLAGS, AT_FILE_LINKS_DEPRECATED, AT_FILE_LINKS2, AT_FILE_OTHER_HASHES, AT_FILE_STORE_TYPES, AT_FILES_EXPANDED, AT_FLAGS, AT_INCOMP_FILE_SUFFIX, AT_LAST_ADDED_TO_ACTIVE_TAG, AT_MD_INFO_DICT_SIZE, AT_MERGED_DATA, AT_MOVE_ON_COMPLETE_DIR, AT_NETWORKS, AT_PARAMETERS, AT_PEAK_RECEIVE_RATE, AT_PEAK_SEND_RATE, AT_PEER_SOURCES, AT_PEER_SOURCES_DENIED, AT_PRIMARY_FILE, AT_PRIMARY_FILE_IDX, AT_RELATIVE_SAVE_PATH, AT_REORDER_MIN_MB, AT_RESUME_STATE, AT_SCRAPE_CACHE, AT_SCRAPE_CACHE_SOURCE, AT_SECRETS, AT_SHARE_RATIO_PROGRESS, AT_TIME_SINCE_DOWNLOAD, AT_TIME_SINCE_UPLOAD, AT_TIME_STOPPED, AT_TORRENT_EXPORT_PROPAGATED, AT_TORRENT_SAVE_TIME, AT_TRACKER_CLIENT_EXTENSIONS, AT_TRACKER_SESSION_STATS, AT_TRANSIENT_FLAGS, AT_USER, AT_USER_COMMENT, AT_VERSION, ATTRIBUTE_DEFAULTS, DEFAULT_MAX_UPLOADS, DEFAULT_UPLOAD_PRIORITY, FAS_DEFAULT, FAS_ZERO_NEW, FAS_ZERO_NEW_STOP, FILE_FLAG_NOT_NEW, FLAG_ALLOW_PERMITTED_PEER_SOURCE_CHANGES, FLAG_DISABLE_AUTO_FILE_MOVE, FLAG_DISABLE_IP_FILTER, FLAG_DISABLE_STOP_AFTER_ALLOC, FLAG_DO_NOT_DELETE_DATA_ON_REMOVE, FLAG_ERROR_REPORTED, FLAG_FORCE_DIRECT_DELETE, FLAG_INITIAL_NETWORKS_SET, FLAG_LOW_NOISE, FLAG_METADATA_DOWNLOAD, FLAG_MOVE_ON_COMPLETION_DONE, FLAG_ONLY_EVER_SEEDED, FLAG_SCAN_INCOMPLETE_PIECES, FLAG_SEQUENTIAL_DOWNLOAD, MIN_MAX_UPLOADS, PARAM_DND_FLAGS, PARAM_DOWNLOAD_ADDED_TIME, PARAM_DOWNLOAD_COMPLETED_TIME, PARAM_DOWNLOAD_FILE_COMPLETED_TIME, PARAM_DOWNLOAD_LAST_ACTIVE_TIME, PARAM_MAX_PEERS, PARAM_MAX_PEERS_WHEN_SEEDING, PARAM_MAX_PEERS_WHEN_SEEDING_ENABLED, PARAM_MAX_SEEDS, PARAM_MAX_SHARE_RATIO, PARAM_MAX_UPLOAD_WHEN_BUSY, PARAM_MAX_UPLOADS, PARAM_MAX_UPLOADS_WHEN_SEEDING, PARAM_MAX_UPLOADS_WHEN_SEEDING_ENABLED, PARAM_MIN_SHARE_RATIO, PARAM_RANDOM_SEED, PARAM_STATS_COUNTED, PARAM_UPLOAD_PRIORITY, PARAMETERS, TRANSIENT_FLAG_FRIEND_FP, TRANSIENT_FLAG_TAG_FP
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
DownloadManagerStateImpl(DownloadManagerImpl _download_manager, TorrentUtils.ExtendedTorrent _torrent)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static void
addGlobalListener(DownloadManagerStateAttributeListener l, java.lang.String attribute, int event_type)
void
addListener(DownloadManagerStateAttributeListener l, java.lang.String attribute, int event_type)
void
clearFileLinks()
void
clearResumeData()
void
clearTrackerResponseCache()
private static void
copyTorrentToActive(TOTorrent torrent_file, java.io.File state_file, boolean was_corrupt)
void
delete()
deletes the saved statestatic void
deleteDownloadState(byte[] download_hash)
static void
deleteDownloadState(java.io.File source_dir, byte[] download_hash)
void
discardFluff()
static void
discardGlobalStateCache()
void
dump(IndentWriter writer)
boolean
exportState(java.io.File target_dir)
void
generateEvidence(IndentWriter writer)
boolean
getAndClearRecoveredStatus()
java.lang.String
getAttribute(java.lang.String name)
boolean
getBooleanAttribute(java.lang.String name)
boolean
getBooleanParameter(java.lang.String name)
static java.lang.Boolean
getBooleanParameterDefault(java.lang.String name)
Category
getCategory()
private static java.lang.Object
getDefaultOverride(java.lang.String name, java.lang.Object value)
java.lang.String
getDisplayName()
DownloadManager
getDownloadManager()
static DownloadManagerState
getDownloadState(DownloadManager dm)
private static DownloadManagerStateImpl
getDownloadState(DownloadManagerImpl download_manager, TOTorrent original_torrent, TorrentUtils.ExtendedTorrent target_torrent)
protected static DownloadManagerState
getDownloadState(DownloadManagerImpl download_manager, java.lang.String torrent_file, byte[] torrent_hash, boolean inactive)
static DownloadManagerState
getDownloadState(TOTorrent original_torrent)
int
getFileFlags(int file_index)
java.io.File
getFileLink(int source_index, java.io.File link_source)
LinkFileMap
getFileLinks()
returns a File -> File map of the defined links (empty if no links)private LinkFileMap
getFileLinksSupport()
boolean
getFlag(long flag)
long
getFlags()
protected static java.io.File
getGlobalStateFile()
int
getIntAttribute(java.lang.String name)
int
getIntParameter(java.lang.String name)
static java.lang.Integer
getIntParameterDefault(java.lang.String name)
java.lang.String[]
getListAttribute(java.lang.String attribute_name)
java.lang.String
getListAttribute(java.lang.String name, int idx)
protected java.util.List
getListAttributeSupport(java.lang.String attribute_name)
long
getLongAttribute(java.lang.String attribute_name)
long
getLongParameter(java.lang.String name)
java.util.Map
getMapAttribute(java.lang.String attribute_name)
java.lang.String[]
getNetworks()
java.lang.String[]
getPeerSources()
DiskManagerFileInfo
getPrimaryFile()
java.lang.String
getRelativeSavePath()
java.util.Map
getResumeData()
java.io.File
getStateFile()
protected static java.io.File
getStateFile(byte[] torrent_hash)
protected java.lang.String
getStringAttribute(java.lang.String attribute_name)
TOTorrent
getTorrent()
java.lang.String
getTrackerClientExtensions()
java.util.Map
getTrackerResponseCache()
boolean
getTransientFlag(long flag)
long
getTransientFlags()
java.lang.String
getUserComment()
boolean
hasAttribute(java.lang.String name)
static void
importDownloadState(java.io.File source_dir, byte[] download_hash)
protected void
informWillRead(java.lang.String attribute_name)
protected void
informWritten(java.lang.String attribute_name)
boolean
isNetworkEnabled(java.lang.String network)
boolean
isOurContent()
boolean
isPeerSourceEnabled(java.lang.String peerSource)
boolean
isPeerSourcePermitted(java.lang.String peerSource)
boolean
isResumeDataComplete()
static void
loadGlobalStateCache()
protected void
mergeTorrentDetails(TOTorrent other_torrent)
void
parameterChanged(java.lang.String parameterName)
Called, when a parameter has changed.boolean
parameterExists(java.lang.String name)
static void
removeGlobalListener(DownloadManagerStateAttributeListener l, java.lang.String attribute, int event_type)
void
removeListener(DownloadManagerStateAttributeListener l, java.lang.String attribute, int event_type)
void
save(boolean interim)
static void
saveGlobalStateCache()
protected void
saveSupport(boolean interim, boolean force)
void
setActive(boolean active)
void
setAttribute(java.lang.String name, java.lang.String value)
void
setAttribute(java.lang.String name, java.lang.String value, boolean set_dirty)
void
setBooleanAttribute(java.lang.String name, boolean value)
void
setBooleanParameter(java.lang.String name, boolean value)
void
setCategory(Category cat)
private void
setDirty(boolean slightly)
void
setDisplayName(java.lang.String value)
protected void
setDownloadManager(DownloadManagerImpl dm)
void
setFileFlags(int file_index, int flags)
void
setFileLink(int source_index, java.io.File link_source, java.io.File link_destination)
void
setFileLinks(java.util.List<java.lang.Integer> source_indexes, java.util.List<java.io.File> link_sources, java.util.List<java.io.File> link_destinations)
void
setFlag(long flag, boolean set)
void
setIntAttribute(java.lang.String name, int value)
void
setIntParameter(java.lang.String name, int value)
void
setListAttribute(java.lang.String name, java.lang.String[] values)
protected void
setListAttribute(java.lang.String attribute_name, java.util.List attribute_value)
void
setLongAttribute(java.lang.String attribute_name, long attribute_value)
void
setLongParameter(java.lang.String name, long value)
void
setMapAttribute(java.lang.String attribute_name, java.util.Map attribute_value)
protected void
setMapAttribute(java.lang.String attribute_name, java.util.Map attribute_value, boolean disable_change_notification)
void
setNetworkEnabled(java.lang.String network, boolean enabled)
void
setNetworks(java.lang.String[] networks)
void
setParameterDefault(java.lang.String name)
Reset to default valuevoid
setPeerSourceEnabled(java.lang.String source, boolean enabled)
void
setPeerSourcePermitted(java.lang.String peerSource, boolean enabled)
void
setPeerSources(java.lang.String[] ps)
void
setPrimaryFile(DiskManagerFileInfo dmfi)
private void
setRecovered()
void
setResumeData(java.util.Map data)
protected void
setStringAttribute(java.lang.String attribute_name, java.lang.String attribute_value, boolean set_dirty)
void
setTrackerClientExtensions(java.lang.String value)
void
setTrackerResponseCache(java.util.Map value)
void
setTransientFlag(long flag, boolean set)
void
setUserComment(java.lang.String value)
void
suppressStateSave(boolean suppress)
This method should only be invoked in matching try-finally pairs.
-
-
-
Field Detail
-
VER_INCOMING_PEER_SOURCE
private static final int VER_INCOMING_PEER_SOURCE
- See Also:
- Constant Field Values
-
VER_CURRENT
private static final int VER_CURRENT
- See Also:
- Constant Field Values
-
LOGID
private static final LogIDs LOGID
-
RESUME_KEY
private static final java.lang.String RESUME_KEY
- See Also:
- Constant Field Values
-
TRACKER_CACHE_KEY
private static final java.lang.String TRACKER_CACHE_KEY
- See Also:
- Constant Field Values
-
ATTRIBUTE_KEY
private static final java.lang.String ATTRIBUTE_KEY
- See Also:
- Constant Field Values
-
AZUREUS_PROPERTIES_KEY
private static final java.lang.String AZUREUS_PROPERTIES_KEY
- See Also:
- Constant Field Values
-
AZUREUS_PRIVATE_PROPERTIES_KEY
private static final java.lang.String AZUREUS_PRIVATE_PROPERTIES_KEY
- See Also:
- Constant Field Values
-
ACTIVE_DIR
private static final java.io.File ACTIVE_DIR
-
SUPPRESS_FIXUP_ERRORS
public static boolean SUPPRESS_FIXUP_ERRORS
-
disable_interim_saves
private static boolean disable_interim_saves
-
random
private static final java.util.Random random
-
default_parameters
private static final java.util.Map default_parameters
-
default_attributes
private static final java.util.Map default_attributes
-
class_mon
private static final AEMonitor class_mon
-
state_map
static final java.util.Map<HashWrapper,DownloadManagerStateImpl> state_map
-
global_state_cache
private static final java.util.Map global_state_cache
-
global_state_cache_wrappers
private static final java.util.ArrayList global_state_cache_wrappers
-
global_listeners_read_map_cow
private static final CopyOnWriteMap<java.lang.String,CopyOnWriteList<DownloadManagerStateAttributeListener>> global_listeners_read_map_cow
-
global_listeners_write_map_cow
private static final CopyOnWriteMap<java.lang.String,CopyOnWriteList<DownloadManagerStateAttributeListener>> global_listeners_write_map_cow
-
download_manager
private DownloadManagerImpl download_manager
-
torrent
private final TorrentUtils.ExtendedTorrent torrent
-
write_required_soon
private boolean write_required_soon
-
write_required_sometime
private long write_required_sometime
-
category
private Category category
-
listeners_read_map_cow
private final CopyOnWriteMap<java.lang.String,CopyOnWriteList<DownloadManagerStateAttributeListener>> listeners_read_map_cow
-
listeners_write_map_cow
private final CopyOnWriteMap<java.lang.String,CopyOnWriteList<DownloadManagerStateAttributeListener>> listeners_write_map_cow
-
parameters
private java.util.Map parameters
-
attributes
private java.util.Map attributes
-
this_mon
private final AEMonitor this_mon
-
supressWrites
private int supressWrites
-
recovered
private boolean recovered
-
tls_wbr
private static final java.lang.ThreadLocal tls_wbr
-
transient_flags
private int transient_flags
-
file_link_cache
private volatile java.lang.ref.WeakReference<LinkFileMap> file_link_cache
-
-
Constructor Detail
-
DownloadManagerStateImpl
protected DownloadManagerStateImpl(DownloadManagerImpl _download_manager, TorrentUtils.ExtendedTorrent _torrent)
-
-
Method Detail
-
getDefaultOverride
private static java.lang.Object getDefaultOverride(java.lang.String name, java.lang.Object value)
-
getIntParameterDefault
public static java.lang.Integer getIntParameterDefault(java.lang.String name)
-
getBooleanParameterDefault
public static java.lang.Boolean getBooleanParameterDefault(java.lang.String name)
-
getDownloadState
private static DownloadManagerStateImpl getDownloadState(DownloadManagerImpl download_manager, TOTorrent original_torrent, TorrentUtils.ExtendedTorrent target_torrent) throws TOTorrentException
- Throws:
TOTorrentException
-
getDownloadState
public static DownloadManagerState getDownloadState(TOTorrent original_torrent) throws TOTorrentException
- Throws:
TOTorrentException
-
getDownloadState
protected static DownloadManagerState getDownloadState(DownloadManagerImpl download_manager, java.lang.String torrent_file, byte[] torrent_hash, boolean inactive) throws TOTorrentException
- Throws:
TOTorrentException
-
copyTorrentToActive
private static void copyTorrentToActive(TOTorrent torrent_file, java.io.File state_file, boolean was_corrupt) throws TOTorrentException
- Throws:
TOTorrentException
-
getStateFile
protected static java.io.File getStateFile(byte[] torrent_hash)
-
getGlobalStateFile
protected static java.io.File getGlobalStateFile()
-
loadGlobalStateCache
public static void loadGlobalStateCache()
-
saveGlobalStateCache
public static void saveGlobalStateCache()
-
discardGlobalStateCache
public static void discardGlobalStateCache()
-
importDownloadState
public static void importDownloadState(java.io.File source_dir, byte[] download_hash) throws DownloadManagerException
- Throws:
DownloadManagerException
-
deleteDownloadState
public static void deleteDownloadState(byte[] download_hash) throws DownloadManagerException
- Throws:
DownloadManagerException
-
deleteDownloadState
public static void deleteDownloadState(java.io.File source_dir, byte[] download_hash) throws DownloadManagerException
- Throws:
DownloadManagerException
-
parameterChanged
public void parameterChanged(java.lang.String parameterName)
Description copied from interface:ParameterListener
Called, when a parameter has changed. The listener could only react if the parameter name is relevant. Or the listener can just read all parameters again.- Specified by:
parameterChanged
in interfaceParameterListener
- Parameters:
parameterName
- the name of the parameter that has changed
-
getDownloadManager
public DownloadManager getDownloadManager()
- Specified by:
getDownloadManager
in interfaceDownloadManagerState
-
setDownloadManager
protected void setDownloadManager(DownloadManagerImpl dm)
-
getStateFile
public java.io.File getStateFile()
- Specified by:
getStateFile
in interfaceDownloadManagerState
-
setRecovered
private void setRecovered()
-
getAndClearRecoveredStatus
public boolean getAndClearRecoveredStatus()
- Specified by:
getAndClearRecoveredStatus
in interfaceDownloadManagerState
-
clearTrackerResponseCache
public void clearTrackerResponseCache()
- Specified by:
clearTrackerResponseCache
in interfaceDownloadManagerState
-
getTrackerResponseCache
public java.util.Map getTrackerResponseCache()
- Specified by:
getTrackerResponseCache
in interfaceDownloadManagerState
-
setTrackerResponseCache
public void setTrackerResponseCache(java.util.Map value)
- Specified by:
setTrackerResponseCache
in interfaceDownloadManagerState
-
getResumeData
public java.util.Map getResumeData()
- Specified by:
getResumeData
in interfaceDownloadManagerState
-
clearResumeData
public void clearResumeData()
- Specified by:
clearResumeData
in interfaceDownloadManagerState
-
setResumeData
public void setResumeData(java.util.Map data)
- Specified by:
setResumeData
in interfaceDownloadManagerState
-
isResumeDataComplete
public boolean isResumeDataComplete()
- Specified by:
isResumeDataComplete
in interfaceDownloadManagerState
-
getTorrent
public TOTorrent getTorrent()
- Specified by:
getTorrent
in interfaceDownloadManagerState
-
setActive
public void setActive(boolean active)
- Specified by:
setActive
in interfaceDownloadManagerState
-
discardFluff
public void discardFluff()
- Specified by:
discardFluff
in interfaceDownloadManagerState
-
exportState
public boolean exportState(java.io.File target_dir)
- Specified by:
exportState
in interfaceDownloadManagerState
-
suppressStateSave
public void suppressStateSave(boolean suppress)
Description copied from interface:DownloadManagerState
This method should only be invoked in matching try-finally pairs. If it is invoked with true multiple times it must be invoked with false the equal amount of times to reallow state writes- Specified by:
suppressStateSave
in interfaceDownloadManagerState
- Parameters:
suppress
- when set to true prevents flushing of the state/increments the internal nesting counter, decrements/allows flush otherwise
-
setDirty
private void setDirty(boolean slightly)
-
save
public void save(boolean interim)
- Specified by:
save
in interfaceDownloadManagerState
-
saveSupport
protected void saveSupport(boolean interim, boolean force)
-
delete
public void delete()
Description copied from interface:DownloadManagerState
deletes the saved state- Specified by:
delete
in interfaceDownloadManagerState
-
mergeTorrentDetails
protected void mergeTorrentDetails(TOTorrent other_torrent)
-
setFlag
public void setFlag(long flag, boolean set)
- Specified by:
setFlag
in interfaceDownloadManagerState
-
getFlag
public boolean getFlag(long flag)
- Specified by:
getFlag
in interfaceDownloadManagerState
-
getFlags
public long getFlags()
- Specified by:
getFlags
in interfaceDownloadManagerState
-
setTransientFlag
public void setTransientFlag(long flag, boolean set)
- Specified by:
setTransientFlag
in interfaceDownloadManagerState
-
getTransientFlag
public boolean getTransientFlag(long flag)
- Specified by:
getTransientFlag
in interfaceDownloadManagerState
-
getTransientFlags
public long getTransientFlags()
- Specified by:
getTransientFlags
in interfaceDownloadManagerState
-
parameterExists
public boolean parameterExists(java.lang.String name)
- Specified by:
parameterExists
in interfaceDownloadManagerState
- Returns:
-
setParameterDefault
public void setParameterDefault(java.lang.String name)
Description copied from interface:DownloadManagerState
Reset to default value- Specified by:
setParameterDefault
in interfaceDownloadManagerState
-
getLongParameter
public long getLongParameter(java.lang.String name)
- Specified by:
getLongParameter
in interfaceDownloadManagerState
-
setLongParameter
public void setLongParameter(java.lang.String name, long value)
- Specified by:
setLongParameter
in interfaceDownloadManagerState
-
getIntParameter
public int getIntParameter(java.lang.String name)
- Specified by:
getIntParameter
in interfaceDownloadManagerState
-
setIntParameter
public void setIntParameter(java.lang.String name, int value)
- Specified by:
setIntParameter
in interfaceDownloadManagerState
-
getBooleanParameter
public boolean getBooleanParameter(java.lang.String name)
- Specified by:
getBooleanParameter
in interfaceDownloadManagerState
-
setBooleanParameter
public void setBooleanParameter(java.lang.String name, boolean value)
- Specified by:
setBooleanParameter
in interfaceDownloadManagerState
-
setAttribute
public void setAttribute(java.lang.String name, java.lang.String value)
- Specified by:
setAttribute
in interfaceDownloadManagerState
-
setAttribute
public void setAttribute(java.lang.String name, java.lang.String value, boolean set_dirty)
- Specified by:
setAttribute
in interfaceDownloadManagerState
-
getAttribute
public java.lang.String getAttribute(java.lang.String name)
- Specified by:
getAttribute
in interfaceDownloadManagerState
-
getCategory
public Category getCategory()
- Specified by:
getCategory
in interfaceDownloadManagerState
-
setCategory
public void setCategory(Category cat)
- Specified by:
setCategory
in interfaceDownloadManagerState
-
getTrackerClientExtensions
public java.lang.String getTrackerClientExtensions()
- Specified by:
getTrackerClientExtensions
in interfaceDownloadManagerState
-
setTrackerClientExtensions
public void setTrackerClientExtensions(java.lang.String value)
- Specified by:
setTrackerClientExtensions
in interfaceDownloadManagerState
-
getDisplayName
public java.lang.String getDisplayName()
- Specified by:
getDisplayName
in interfaceDownloadManagerState
-
setDisplayName
public void setDisplayName(java.lang.String value)
- Specified by:
setDisplayName
in interfaceDownloadManagerState
-
getUserComment
public java.lang.String getUserComment()
- Specified by:
getUserComment
in interfaceDownloadManagerState
-
setUserComment
public void setUserComment(java.lang.String value)
- Specified by:
setUserComment
in interfaceDownloadManagerState
-
getRelativeSavePath
public java.lang.String getRelativeSavePath()
- Specified by:
getRelativeSavePath
in interfaceDownloadManagerState
-
getPrimaryFile
public DiskManagerFileInfo getPrimaryFile()
- Specified by:
getPrimaryFile
in interfaceDownloadManagerState
-
setPrimaryFile
public void setPrimaryFile(DiskManagerFileInfo dmfi)
- Specified by:
setPrimaryFile
in interfaceDownloadManagerState
- Parameters:
dmfi
-
-
getNetworks
public java.lang.String[] getNetworks()
- Specified by:
getNetworks
in interfaceDownloadManagerState
-
isNetworkEnabled
public boolean isNetworkEnabled(java.lang.String network)
- Specified by:
isNetworkEnabled
in interfaceDownloadManagerState
-
setNetworks
public void setNetworks(java.lang.String[] networks)
- Specified by:
setNetworks
in interfaceDownloadManagerState
-
setNetworkEnabled
public void setNetworkEnabled(java.lang.String network, boolean enabled)
- Specified by:
setNetworkEnabled
in interfaceDownloadManagerState
-
getPeerSources
public java.lang.String[] getPeerSources()
- Specified by:
getPeerSources
in interfaceDownloadManagerState
-
isPeerSourceEnabled
public boolean isPeerSourceEnabled(java.lang.String peerSource)
- Specified by:
isPeerSourceEnabled
in interfaceDownloadManagerState
-
isPeerSourcePermitted
public boolean isPeerSourcePermitted(java.lang.String peerSource)
- Specified by:
isPeerSourcePermitted
in interfaceDownloadManagerState
-
setPeerSourcePermitted
public void setPeerSourcePermitted(java.lang.String peerSource, boolean enabled)
- Specified by:
setPeerSourcePermitted
in interfaceDownloadManagerState
-
setPeerSources
public void setPeerSources(java.lang.String[] ps)
- Specified by:
setPeerSources
in interfaceDownloadManagerState
-
setPeerSourceEnabled
public void setPeerSourceEnabled(java.lang.String source, boolean enabled)
- Specified by:
setPeerSourceEnabled
in interfaceDownloadManagerState
-
setFileLink
public void setFileLink(int source_index, java.io.File link_source, java.io.File link_destination)
- Specified by:
setFileLink
in interfaceDownloadManagerState
-
setFileLinks
public void setFileLinks(java.util.List<java.lang.Integer> source_indexes, java.util.List<java.io.File> link_sources, java.util.List<java.io.File> link_destinations)
- Specified by:
setFileLinks
in interfaceDownloadManagerState
-
clearFileLinks
public void clearFileLinks()
- Specified by:
clearFileLinks
in interfaceDownloadManagerState
-
getFileLink
public java.io.File getFileLink(int source_index, java.io.File link_source)
- Specified by:
getFileLink
in interfaceDownloadManagerState
-
getFileLinks
public LinkFileMap getFileLinks()
Description copied from interface:DownloadManagerState
returns a File -> File map of the defined links (empty if no links)- Specified by:
getFileLinks
in interfaceDownloadManagerState
- Returns:
-
getFileLinksSupport
private LinkFileMap getFileLinksSupport()
-
getFileFlags
public int getFileFlags(int file_index)
- Specified by:
getFileFlags
in interfaceDownloadManagerState
-
setFileFlags
public void setFileFlags(int file_index, int flags)
- Specified by:
setFileFlags
in interfaceDownloadManagerState
-
isOurContent
public boolean isOurContent()
- Specified by:
isOurContent
in interfaceDownloadManagerState
- Returns:
-
getStringAttribute
protected java.lang.String getStringAttribute(java.lang.String attribute_name)
-
setStringAttribute
protected void setStringAttribute(java.lang.String attribute_name, java.lang.String attribute_value, boolean set_dirty)
-
getLongAttribute
public long getLongAttribute(java.lang.String attribute_name)
- Specified by:
getLongAttribute
in interfaceDownloadManagerState
-
setLongAttribute
public void setLongAttribute(java.lang.String attribute_name, long attribute_value)
- Specified by:
setLongAttribute
in interfaceDownloadManagerState
-
setListAttribute
public void setListAttribute(java.lang.String name, java.lang.String[] values)
- Specified by:
setListAttribute
in interfaceDownloadManagerState
-
getListAttribute
public java.lang.String getListAttribute(java.lang.String name, int idx)
- Specified by:
getListAttribute
in interfaceDownloadManagerState
-
getListAttribute
public java.lang.String[] getListAttribute(java.lang.String attribute_name)
- Specified by:
getListAttribute
in interfaceDownloadManagerState
-
getListAttributeSupport
protected java.util.List getListAttributeSupport(java.lang.String attribute_name)
-
setListAttribute
protected void setListAttribute(java.lang.String attribute_name, java.util.List attribute_value)
-
getMapAttribute
public java.util.Map getMapAttribute(java.lang.String attribute_name)
- Specified by:
getMapAttribute
in interfaceDownloadManagerState
-
setMapAttribute
public void setMapAttribute(java.lang.String attribute_name, java.util.Map attribute_value)
- Specified by:
setMapAttribute
in interfaceDownloadManagerState
-
setMapAttribute
protected void setMapAttribute(java.lang.String attribute_name, java.util.Map attribute_value, boolean disable_change_notification)
-
hasAttribute
public boolean hasAttribute(java.lang.String name)
- Specified by:
hasAttribute
in interfaceDownloadManagerState
-
setIntAttribute
public void setIntAttribute(java.lang.String name, int value)
- Specified by:
setIntAttribute
in interfaceDownloadManagerState
-
getIntAttribute
public int getIntAttribute(java.lang.String name)
- Specified by:
getIntAttribute
in interfaceDownloadManagerState
-
setBooleanAttribute
public void setBooleanAttribute(java.lang.String name, boolean value)
- Specified by:
setBooleanAttribute
in interfaceDownloadManagerState
-
getBooleanAttribute
public boolean getBooleanAttribute(java.lang.String name)
- Specified by:
getBooleanAttribute
in interfaceDownloadManagerState
-
getDownloadState
public static DownloadManagerState getDownloadState(DownloadManager dm)
-
informWritten
protected void informWritten(java.lang.String attribute_name)
-
informWillRead
protected void informWillRead(java.lang.String attribute_name)
-
addListener
public void addListener(DownloadManagerStateAttributeListener l, java.lang.String attribute, int event_type)
- Specified by:
addListener
in interfaceDownloadManagerState
- Parameters:
l
- Listener to fireattribute
- attribute to listen for (null for all)event_type
-DownloadManagerStateAttributeListener.WILL_BE_READ
orDownloadManagerStateAttributeListener.WRITTEN
-
removeListener
public void removeListener(DownloadManagerStateAttributeListener l, java.lang.String attribute, int event_type)
- Specified by:
removeListener
in interfaceDownloadManagerState
-
addGlobalListener
public static void addGlobalListener(DownloadManagerStateAttributeListener l, java.lang.String attribute, int event_type)
-
removeGlobalListener
public static void removeGlobalListener(DownloadManagerStateAttributeListener l, java.lang.String attribute, int event_type)
-
generateEvidence
public void generateEvidence(IndentWriter writer)
- Specified by:
generateEvidence
in interfaceDownloadManagerState
-
dump
public void dump(IndentWriter writer)
- Specified by:
dump
in interfaceDownloadManagerState
-
-