Class TRTrackerServerPeerImpl
java.lang.Object
com.biglybt.core.tracker.server.impl.TRTrackerServerPeerImpl
- All Implemented Interfaces:
TRTrackerServerNatCheckerListener
,TRTrackerServerSimplePeer
,TRTrackerServerPeer
,TRTrackerServerPeerBase
,HostNameToIPResolverListener
public class TRTrackerServerPeerImpl
extends Object
implements TRTrackerServerPeer, TRTrackerServerSimplePeer, HostNameToIPResolverListener, TRTrackerServerNatCheckerListener
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate long
private byte
private boolean
private byte
private boolean
private long
private short
private byte[]
private byte[]
private final boolean
private String
private final int
private long
private byte
private DHTNetworkPosition
private final HashWrapper
private short
private long
private short
private short
private long
private Object
Fields inherited from interface com.biglybt.core.tracker.server.TRTrackerServerPeer
CRYPTO_NONE, CRYPTO_REQUIRED, CRYPTO_SUPPORTED, NAT_CHECK_DISABLED, NAT_CHECK_FAILED, NAT_CHECK_FAILED_AND_REPORTED, NAT_CHECK_INITIATED, NAT_CHECK_OK, NAT_CHECK_UNKNOWN
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
TRTrackerServerPeerImpl
(HashWrapper _peer_id, int _key_hash_code, byte[] _ip, boolean _ip_override, int _tcp_port, int _udp_port, int _http_port, byte _crypto_level, byte _az_ver, long _last_contact_time, boolean _download_completed, byte _last_nat_status, int _up_speed, DHTNetworkPosition _network_position) protected
TRTrackerServerPeerImpl
(HashWrapper _peer_id, int _key_hash_code, byte[] _ip, boolean _ip_override, short _tcp_port, short _udp_port, short _http_port, byte _crypto_level, byte _az_ver, String _ip_str, byte[] _ip_bytes, byte _NAT_status, long _timeout, long _uploaded, long _downloaded, long _amount_left, long _last_contact_time, boolean _download_completed, boolean _biased, short _up_speed) Import constructor -
Method Summary
Modifier and TypeMethodDescriptionexport()
long
byte
getAZVer()
byte
protected boolean
long
int
getIP()
If asynchronous resolution of the address is required, this will return the non-resolved address until the async process completesbyte[]
This will return in resolution of the address is not complete or failsbyte[]
getIPRaw()
protected int
protected long
byte
returns the current NAT status of the peerbyte[]
int
protected String
int
protected long
int
long
int
getUserData
(Object key) void
hostNameResolutionComplete
(InetAddress address) static TRTrackerServerPeerImpl
importPeer
(Map map) boolean
isBiased()
protected boolean
protected boolean
boolean
isSeed()
void
NATCheckComplete
(boolean ok) protected void
void
setBiased
(boolean _biased) protected void
protected void
setNATStatus
(byte status) protected void
setStats
(long _uploaded, long _downloaded, long _amount_left) protected void
setTimeout
(long _now, long _timeout) void
setUserData
(Object key, Object data) protected boolean
update
(byte[] _ip, int _port, int _udp_port, int _http_port, byte _crypto_level, byte _az_ver, int _up_speed, DHTNetworkPosition _network_position)
-
Field Details
-
peer_id
-
key_hash_code
private final int key_hash_code -
ip
private byte[] ip -
ip_override
private final boolean ip_override -
tcp_port
private short tcp_port -
udp_port
private short udp_port -
http_port
private short http_port -
crypto_level
private byte crypto_level -
az_ver
private byte az_ver -
ip_str
-
ip_bytes
private byte[] ip_bytes -
NAT_status
private byte NAT_status -
timeout
private long timeout -
uploaded
private long uploaded -
downloaded
private long downloaded -
amount_left
private long amount_left -
last_contact_time
private long last_contact_time -
download_completed
private boolean download_completed -
biased
private boolean biased -
up_speed
private short up_speed -
network_position
-
user_data
-
-
Constructor Details
-
TRTrackerServerPeerImpl
protected TRTrackerServerPeerImpl(HashWrapper _peer_id, int _key_hash_code, byte[] _ip, boolean _ip_override, int _tcp_port, int _udp_port, int _http_port, byte _crypto_level, byte _az_ver, long _last_contact_time, boolean _download_completed, byte _last_nat_status, int _up_speed, DHTNetworkPosition _network_position) -
TRTrackerServerPeerImpl
protected TRTrackerServerPeerImpl(HashWrapper _peer_id, int _key_hash_code, byte[] _ip, boolean _ip_override, short _tcp_port, short _udp_port, short _http_port, byte _crypto_level, byte _az_ver, String _ip_str, byte[] _ip_bytes, byte _NAT_status, long _timeout, long _uploaded, long _downloaded, long _amount_left, long _last_contact_time, boolean _download_completed, boolean _biased, short _up_speed) Import constructor
-
-
Method Details
-
update
protected boolean update(byte[] _ip, int _port, int _udp_port, int _http_port, byte _crypto_level, byte _az_ver, int _up_speed, DHTNetworkPosition _network_position) -
NATCheckComplete
public void NATCheckComplete(boolean ok) - Specified by:
NATCheckComplete
in interfaceTRTrackerServerNatCheckerListener
-
setNATStatus
protected void setNATStatus(byte status) -
getNATStatus
public byte getNATStatus()Description copied from interface:TRTrackerServerPeer
returns the current NAT status of the peer- Specified by:
getNATStatus
in interfaceTRTrackerServerPeer
- Returns:
-
isNATStatusBad
protected boolean isNATStatusBad() -
resolveAndCheckNAT
protected void resolveAndCheckNAT() -
hostNameResolutionComplete
- Specified by:
hostNameResolutionComplete
in interfaceHostNameToIPResolverListener
- Parameters:
address
- null if resolution failed
-
getLastContactTime
protected long getLastContactTime() -
getDownloadCompleted
protected boolean getDownloadCompleted() -
setDownloadCompleted
protected void setDownloadCompleted() -
isBiased
public boolean isBiased()- Specified by:
isBiased
in interfaceTRTrackerServerPeer
- Specified by:
isBiased
in interfaceTRTrackerServerSimplePeer
-
setBiased
public void setBiased(boolean _biased) - Specified by:
setBiased
in interfaceTRTrackerServerPeer
-
getPeerId
- Specified by:
getPeerId
in interfaceTRTrackerServerSimplePeer
-
getPeerID
public byte[] getPeerID()- Specified by:
getPeerID
in interfaceTRTrackerServerPeer
-
getKeyHashCode
protected int getKeyHashCode() -
getIPAsRead
public byte[] getIPAsRead()- Specified by:
getIPAsRead
in interfaceTRTrackerServerSimplePeer
-
getIPRaw
- Specified by:
getIPRaw
in interfaceTRTrackerServerPeer
-
getIP
If asynchronous resolution of the address is required, this will return the non-resolved address until the async process completes- Specified by:
getIP
in interfaceTRTrackerServerPeerBase
-
isIPOverride
protected boolean isIPOverride() -
getIPAddressBytes
public byte[] getIPAddressBytes()This will return in resolution of the address is not complete or fails- Specified by:
getIPAddressBytes
in interfaceTRTrackerServerSimplePeer
- Returns:
-
getTCPPort
public int getTCPPort()- Specified by:
getTCPPort
in interfaceTRTrackerServerPeerBase
- Specified by:
getTCPPort
in interfaceTRTrackerServerSimplePeer
-
getUDPPort
public int getUDPPort()- Specified by:
getUDPPort
in interfaceTRTrackerServerSimplePeer
-
getHTTPPort
public int getHTTPPort()- Specified by:
getHTTPPort
in interfaceTRTrackerServerPeerBase
- Specified by:
getHTTPPort
in interfaceTRTrackerServerSimplePeer
-
getCryptoLevel
public byte getCryptoLevel()- Specified by:
getCryptoLevel
in interfaceTRTrackerServerSimplePeer
-
getAZVer
public byte getAZVer()- Specified by:
getAZVer
in interfaceTRTrackerServerSimplePeer
-
getUpSpeed
public int getUpSpeed()- Specified by:
getUpSpeed
in interfaceTRTrackerServerSimplePeer
-
getNetworkPosition
- Specified by:
getNetworkPosition
in interfaceTRTrackerServerSimplePeer
-
setTimeout
protected void setTimeout(long _now, long _timeout) -
getTimeout
protected long getTimeout() -
getSecsToLive
public int getSecsToLive()- Specified by:
getSecsToLive
in interfaceTRTrackerServerPeerBase
-
setStats
protected void setStats(long _uploaded, long _downloaded, long _amount_left) -
getUploaded
public long getUploaded()- Specified by:
getUploaded
in interfaceTRTrackerServerPeer
-
getDownloaded
public long getDownloaded()- Specified by:
getDownloaded
in interfaceTRTrackerServerPeer
-
getAmountLeft
public long getAmountLeft()- Specified by:
getAmountLeft
in interfaceTRTrackerServerPeer
-
isSeed
public boolean isSeed()- Specified by:
isSeed
in interfaceTRTrackerServerSimplePeer
-
setUserData
- Specified by:
setUserData
in interfaceTRTrackerServerPeer
-
getUserData
- Specified by:
getUserData
in interfaceTRTrackerServerPeer
-
export
- Specified by:
export
in interfaceTRTrackerServerPeer
-
importPeer
-
getString
-