com.aelitis.azureus.core.dht.transport.loopback
Class DHTTransportLoopbackImpl
java.lang.Object
com.aelitis.azureus.core.dht.transport.loopback.DHTTransportLoopbackImpl
- All Implemented Interfaces:
- DHTTransport
public class DHTTransportLoopbackImpl
- extends Object
- implements DHTTransport
- Author:
- parg
Method Summary |
void |
addListener(DHTTransportListener l)
|
void |
exportContact(DHTTransportContact contact,
DataOutputStream os)
|
Map<String,Object> |
exportContactToMap(DHTTransportContact contact)
|
protected DHTTransportLoopbackImpl |
findTarget(byte[] id)
|
byte |
getGenericFlags()
|
DHTTransportContact |
getLocalContact()
Gives access to the node ID for this transport |
byte |
getMinimumProtocolVersion()
|
int |
getNetwork()
|
static DHTTransportStats |
getOverallStats()
|
int |
getPort()
|
byte |
getProtocolVersion()
|
DHTTransportContact[] |
getReachableContacts()
|
DHTTransportContact[] |
getRecentContacts()
|
protected DHTTransportRequestHandler |
getRequestHandler()
|
DHTTransportStats |
getStats()
|
long |
getTimeout()
|
DHTTransportContact |
importContact(DataInputStream is,
boolean is_bootstrap)
|
boolean |
isIPV6()
|
boolean |
isReachable()
|
byte[] |
readTransfer(DHTTransportProgressListener listener,
DHTTransportContact target,
byte[] handler_key,
byte[] key,
long timeout)
|
void |
registerTransferHandler(byte[] handler_key,
DHTTransportTransferHandler handler)
|
void |
registerTransferHandler(byte[] handler_key,
DHTTransportTransferHandler handler,
Map<String,Object> options)
|
void |
removeContact(DHTTransportContact contact)
|
void |
removeListener(DHTTransportListener l)
|
protected void |
run(AERunnable r)
|
void |
sendFindNode(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] nid)
|
void |
sendFindNodeSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] nid)
|
void |
sendFindValue(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] key,
int max,
short flags)
|
void |
sendFindValueSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] key,
int max,
short flags)
|
void |
sendKeyBlock(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] request,
byte[] sig)
|
void |
sendKeyBlockSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] request,
byte[] sig)
|
void |
sendPing(DHTTransportContact contact,
DHTTransportReplyHandler handler)
|
void |
sendPingSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler)
|
void |
sendQueryStore(DHTTransportContact contact,
DHTTransportReplyHandler handler,
int header_length,
List<Object[]> key_details)
|
void |
sendStats(DHTTransportContact contact,
DHTTransportReplyHandler handler)
|
void |
sendStatsSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler)
|
void |
sendStore(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[][] keys,
DHTTransportValue[][] value_sets,
boolean immediate)
|
void |
sendStoreSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[][] keys,
DHTTransportValue[][] value_sets)
|
static void |
setFailPercentage(int p)
|
void |
setGenericFlag(byte flag,
boolean value)
|
static void |
setLatency(int _latency)
|
void |
setPort(int port)
|
void |
setRequestHandler(DHTTransportRequestHandler _request_handler)
Set the handler for incoming requests |
void |
setSuspended(boolean susp)
|
void |
setTimeout(long millis)
|
boolean |
supportsStorage()
|
protected boolean |
triggerFailure()
|
void |
unregisterTransferHandler(byte[] handler_key,
DHTTransportTransferHandler handler)
|
byte[] |
writeReadTransfer(DHTTransportProgressListener listener,
DHTTransportContact target,
byte[] handler_key,
byte[] data,
long timeout)
|
void |
writeTransfer(DHTTransportProgressListener listener,
DHTTransportContact target,
byte[] handler_key,
byte[] key,
byte[] data,
long timeout)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
VERSION
public static final byte VERSION
- See Also:
- Constant Field Values
LATENCY
public static int LATENCY
FAIL_PERCENTAGE
public static int FAIL_PERCENTAGE
DHTTransportLoopbackImpl
public DHTTransportLoopbackImpl(int _id_byte_length)
getProtocolVersion
public byte getProtocolVersion()
- Specified by:
getProtocolVersion
in interface DHTTransport
getMinimumProtocolVersion
public byte getMinimumProtocolVersion()
- Specified by:
getMinimumProtocolVersion
in interface DHTTransport
getNetwork
public int getNetwork()
- Specified by:
getNetwork
in interface DHTTransport
isIPV6
public boolean isIPV6()
- Specified by:
isIPV6
in interface DHTTransport
setLatency
public static void setLatency(int _latency)
setFailPercentage
public static void setFailPercentage(int p)
getOverallStats
public static DHTTransportStats getOverallStats()
getLocalContact
public DHTTransportContact getLocalContact()
- Description copied from interface:
DHTTransport
- Gives access to the node ID for this transport
- Specified by:
getLocalContact
in interface DHTTransport
- Returns:
setPort
public void setPort(int port)
- Specified by:
setPort
in interface DHTTransport
getPort
public int getPort()
- Specified by:
getPort
in interface DHTTransport
getGenericFlags
public byte getGenericFlags()
- Specified by:
getGenericFlags
in interface DHTTransport
setGenericFlag
public void setGenericFlag(byte flag,
boolean value)
- Specified by:
setGenericFlag
in interface DHTTransport
setSuspended
public void setSuspended(boolean susp)
- Specified by:
setSuspended
in interface DHTTransport
getTimeout
public long getTimeout()
- Specified by:
getTimeout
in interface DHTTransport
setTimeout
public void setTimeout(long millis)
- Specified by:
setTimeout
in interface DHTTransport
isReachable
public boolean isReachable()
- Specified by:
isReachable
in interface DHTTransport
getReachableContacts
public DHTTransportContact[] getReachableContacts()
- Specified by:
getReachableContacts
in interface DHTTransport
getRecentContacts
public DHTTransportContact[] getRecentContacts()
- Specified by:
getRecentContacts
in interface DHTTransport
findTarget
protected DHTTransportLoopbackImpl findTarget(byte[] id)
setRequestHandler
public void setRequestHandler(DHTTransportRequestHandler _request_handler)
- Description copied from interface:
DHTTransport
- Set the handler for incoming requests
- Specified by:
setRequestHandler
in interface DHTTransport
getRequestHandler
protected DHTTransportRequestHandler getRequestHandler()
exportContactToMap
public Map<String,Object> exportContactToMap(DHTTransportContact contact)
exportContact
public void exportContact(DHTTransportContact contact,
DataOutputStream os)
throws IOException
- Throws:
IOException
importContact
public DHTTransportContact importContact(DataInputStream is,
boolean is_bootstrap)
throws IOException
- Specified by:
importContact
in interface DHTTransport
- Throws:
IOException
removeContact
public void removeContact(DHTTransportContact contact)
run
protected void run(AERunnable r)
getStats
public DHTTransportStats getStats()
- Specified by:
getStats
in interface DHTTransport
sendPing
public void sendPing(DHTTransportContact contact,
DHTTransportReplyHandler handler)
sendPingSupport
public void sendPingSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler)
sendKeyBlock
public void sendKeyBlock(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] request,
byte[] sig)
sendKeyBlockSupport
public void sendKeyBlockSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] request,
byte[] sig)
sendStats
public void sendStats(DHTTransportContact contact,
DHTTransportReplyHandler handler)
sendStatsSupport
public void sendStatsSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler)
sendStore
public void sendStore(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[][] keys,
DHTTransportValue[][] value_sets,
boolean immediate)
sendStoreSupport
public void sendStoreSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[][] keys,
DHTTransportValue[][] value_sets)
sendQueryStore
public void sendQueryStore(DHTTransportContact contact,
DHTTransportReplyHandler handler,
int header_length,
List<Object[]> key_details)
sendFindNode
public void sendFindNode(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] nid)
sendFindNodeSupport
public void sendFindNodeSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] nid)
sendFindValue
public void sendFindValue(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] key,
int max,
short flags)
sendFindValueSupport
public void sendFindValueSupport(DHTTransportContact contact,
DHTTransportReplyHandler handler,
byte[] key,
int max,
short flags)
triggerFailure
protected boolean triggerFailure()
registerTransferHandler
public void registerTransferHandler(byte[] handler_key,
DHTTransportTransferHandler handler)
- Specified by:
registerTransferHandler
in interface DHTTransport
registerTransferHandler
public void registerTransferHandler(byte[] handler_key,
DHTTransportTransferHandler handler,
Map<String,Object> options)
- Specified by:
registerTransferHandler
in interface DHTTransport
unregisterTransferHandler
public void unregisterTransferHandler(byte[] handler_key,
DHTTransportTransferHandler handler)
- Specified by:
unregisterTransferHandler
in interface DHTTransport
readTransfer
public byte[] readTransfer(DHTTransportProgressListener listener,
DHTTransportContact target,
byte[] handler_key,
byte[] key,
long timeout)
throws DHTTransportException
- Specified by:
readTransfer
in interface DHTTransport
- Throws:
DHTTransportException
writeTransfer
public void writeTransfer(DHTTransportProgressListener listener,
DHTTransportContact target,
byte[] handler_key,
byte[] key,
byte[] data,
long timeout)
throws DHTTransportException
- Specified by:
writeTransfer
in interface DHTTransport
- Throws:
DHTTransportException
writeReadTransfer
public byte[] writeReadTransfer(DHTTransportProgressListener listener,
DHTTransportContact target,
byte[] handler_key,
byte[] data,
long timeout)
throws DHTTransportException
- Specified by:
writeReadTransfer
in interface DHTTransport
- Throws:
DHTTransportException
supportsStorage
public boolean supportsStorage()
- Specified by:
supportsStorage
in interface DHTTransport
addListener
public void addListener(DHTTransportListener l)
- Specified by:
addListener
in interface DHTTransport
removeListener
public void removeListener(DHTTransportListener l)
- Specified by:
removeListener
in interface DHTTransport