Class DownloadStubImpl
- java.lang.Object
-
- com.biglybt.pifimpl.local.download.DownloadStubImpl
-
- All Implemented Interfaces:
DownloadStub
,DownloadStub.DownloadStubEx
public class DownloadStubImpl extends java.lang.Object implements DownloadStub.DownloadStubEx
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
DownloadStubImpl.DownloadStubFileImpl
-
Nested classes/interfaces inherited from interface com.biglybt.pif.download.DownloadStub
DownloadStub.DownloadStubEx, DownloadStub.DownloadStubFile
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<java.lang.String,java.lang.Object>
attributes
private java.lang.String
category
private long
date_completed
private long
date_created
private DownloadStubImpl.DownloadStubFileImpl[]
files
private java.util.Map<java.lang.String,java.lang.Object>
gm_map
private byte[]
hash
private java.lang.String
main_tracker
private DownloadManagerImpl
manager
private java.lang.String[]
manual_tags
private java.lang.String
name
private java.lang.String
save_path
private int
share_ratio
private long
size
private DownloadImpl
temp_download
-
Constructor Summary
Constructors Modifier Constructor Description protected
DownloadStubImpl(DownloadManagerImpl _manager, DownloadImpl _download, DownloadManager _core_dm, java.lang.String[] _manual_tags, java.lang.String _category, java.util.Map<java.lang.String,java.lang.Object> _gm_map)
protected
DownloadStubImpl(DownloadManagerImpl _manager, java.util.Map<java.lang.String,java.lang.Object> _map)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private int
countFiles(java.io.File dir)
Download
destubbify()
java.util.Map<java.lang.String,java.lang.Object>
exportToMap()
java.lang.String
getCategory()
long
getCompletionDate()
long
getCreationDate()
java.util.Map
getGMMap()
long
getLongAttribute(TorrentAttribute attribute)
There are logically separate from the un-stubbed download, if you want to synchronize values from non-stub and stub then it is up to you to do it.java.lang.String
getMainTracker()
java.lang.String[]
getManualTags()
java.lang.String
getName()
java.lang.String
getSavePath()
int
getShareRatio()
DownloadStub.DownloadStubFile[]
getStubFiles()
Torrent
getTorrent()
byte[]
getTorrentHash()
long
getTorrentSize()
boolean
isStub()
void
remove()
void
remove(boolean delete_torrent, boolean delete_data)
void
setLongAttribute(TorrentAttribute attribute, long value)
protected void
setSavePath(java.lang.String sp)
Can ONLY be used before the stub is initially savedprotected void
setStubbified()
-
-
-
Field Detail
-
manager
private final DownloadManagerImpl manager
-
name
private final java.lang.String name
-
hash
private final byte[] hash
-
size
private final long size
-
date_created
private final long date_created
-
date_completed
private final long date_completed
-
save_path
private java.lang.String save_path
-
main_tracker
private final java.lang.String main_tracker
-
files
private final DownloadStubImpl.DownloadStubFileImpl[] files
-
manual_tags
private final java.lang.String[] manual_tags
-
category
private final java.lang.String category
-
share_ratio
private final int share_ratio
-
gm_map
private final java.util.Map<java.lang.String,java.lang.Object> gm_map
-
temp_download
private DownloadImpl temp_download
-
attributes
private java.util.Map<java.lang.String,java.lang.Object> attributes
-
-
Constructor Detail
-
DownloadStubImpl
protected DownloadStubImpl(DownloadManagerImpl _manager, DownloadImpl _download, DownloadManager _core_dm, java.lang.String[] _manual_tags, java.lang.String _category, java.util.Map<java.lang.String,java.lang.Object> _gm_map)
-
DownloadStubImpl
protected DownloadStubImpl(DownloadManagerImpl _manager, java.util.Map<java.lang.String,java.lang.Object> _map)
-
-
Method Detail
-
exportToMap
public java.util.Map<java.lang.String,java.lang.Object> exportToMap()
-
isStub
public boolean isStub()
- Specified by:
isStub
in interfaceDownloadStub
-
setStubbified
protected void setStubbified()
-
destubbify
public Download destubbify() throws DownloadException
- Specified by:
destubbify
in interfaceDownloadStub
- Throws:
DownloadException
-
getTorrent
public Torrent getTorrent()
- Specified by:
getTorrent
in interfaceDownloadStub
-
getName
public java.lang.String getName()
- Specified by:
getName
in interfaceDownloadStub
-
getTorrentHash
public byte[] getTorrentHash()
- Specified by:
getTorrentHash
in interfaceDownloadStub
-
getTorrentSize
public long getTorrentSize()
- Specified by:
getTorrentSize
in interfaceDownloadStub
-
getCreationDate
public long getCreationDate()
- Specified by:
getCreationDate
in interfaceDownloadStub.DownloadStubEx
-
getCompletionDate
public long getCompletionDate()
- Specified by:
getCompletionDate
in interfaceDownloadStub.DownloadStubEx
-
getSavePath
public java.lang.String getSavePath()
- Specified by:
getSavePath
in interfaceDownloadStub
-
setSavePath
protected void setSavePath(java.lang.String sp)
Can ONLY be used before the stub is initially saved- Parameters:
sp
-
-
getMainTracker
public java.lang.String getMainTracker()
- Specified by:
getMainTracker
in interfaceDownloadStub
-
getStubFiles
public DownloadStub.DownloadStubFile[] getStubFiles()
- Specified by:
getStubFiles
in interfaceDownloadStub
-
getManualTags
public java.lang.String[] getManualTags()
- Specified by:
getManualTags
in interfaceDownloadStub.DownloadStubEx
-
getCategory
public java.lang.String getCategory()
- Specified by:
getCategory
in interfaceDownloadStub.DownloadStubEx
-
getShareRatio
public int getShareRatio()
- Specified by:
getShareRatio
in interfaceDownloadStub.DownloadStubEx
-
getLongAttribute
public long getLongAttribute(TorrentAttribute attribute)
Description copied from interface:DownloadStub
There are logically separate from the un-stubbed download, if you want to synchronize values from non-stub and stub then it is up to you to do it. So I suggest that you infact don't do this but just use these methods as a means to cache essential attributes from unstubbed ones in the 'will-be-added' listener event- Specified by:
getLongAttribute
in interfaceDownloadStub
- Returns:
-
setLongAttribute
public void setLongAttribute(TorrentAttribute attribute, long value)
- Specified by:
setLongAttribute
in interfaceDownloadStub
-
getGMMap
public java.util.Map getGMMap()
-
remove
public void remove()
- Specified by:
remove
in interfaceDownloadStub
-
remove
public void remove(boolean delete_torrent, boolean delete_data) throws DownloadException, DownloadRemovalVetoException
- Specified by:
remove
in interfaceDownloadStub.DownloadStubEx
- Throws:
DownloadException
DownloadRemovalVetoException
-
countFiles
private int countFiles(java.io.File dir)
-
-