Class DHTTransferHandler
java.lang.Object
com.biglybt.core.dht.transport.util.DHTTransferHandler
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface
private final class
static class
protected class
protected class
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) int
private final DHTTransferHandler.Adapter
(package private) final Map
<HashWrapper, Object> private long
private final DHTLogger
private final int
private static final long
private final Map
<Long, DHTTransferHandler.transferQueue> private final long
private static final long
(package private) final AEMonitor
(package private) long
private final Map
<HashWrapper, DHTTransferHandler.transferHandlerInterceptor> private static final int
(package private) final long
private static final long
private final Map
<Long, DHTTransferHandler.transferQueue> private final long
private static final long
private static final boolean
-
Constructor Summary
ConstructorsConstructorDescriptionDHTTransferHandler
(DHTTransferHandler.Adapter _adapter, int _max_data, float _latency_indicator, DHTLogger _logger) DHTTransferHandler
(DHTTransferHandler.Adapter _adapter, int _max_data, DHTLogger _logger) -
Method Summary
Modifier and TypeMethodDescriptionprotected String
getMessageText
(String resource, String... params) protected int
handleTransferRequest
(DHTTransportContact target, long connection_id, byte[] transfer_key, byte[] request_key, byte[] data, int start, int length, boolean write_request, boolean first_packet_only) (package private) void
private void
protected DHTTransferHandler.transferQueue
lookupTransferQueue
(Map<Long, DHTTransferHandler.transferQueue> transfers, long id) byte[]
readTransfer
(DHTTransportProgressListener listener, DHTTransportContact target, byte[] handler_key, byte[] key, long timeout) void
receivePacket
(DHTTransportContact originator, DHTTransferHandler.Packet req) void
registerTransferHandler
(byte[] handler_key, DHTTransportTransferHandler handler) void
registerTransferHandler
(byte[] handler_key, DHTTransportTransferHandler handler, Map<String, Object> options) protected byte[]
runTransferQueue
(DHTTransferHandler.transferQueue transfer_queue, DHTTransportProgressListener listener, DHTTransportContact target, byte[] handler_key, byte[] key, long timeout, boolean read_transfer) void
sendReadReply
(long connection_id, DHTTransportContact contact, byte[] transfer_key, byte[] key, byte[] data, int start_position, int length, int total_length) void
sendReadRequest
(long connection_id, DHTTransportContact contact, byte[] transfer_key, byte[] key, int start_pos, int len) void
sendWriteReply
(long connection_id, DHTTransportContact contact, byte[] transfer_key, byte[] key, int start_position, int length) void
sendWriteRequest
(long connection_id, DHTTransportContact contact, byte[] transfer_key, byte[] key, byte[] data, int start_position, int length, int total_length) void
unregisterTransferHandler
(byte[] handler_key, DHTTransportTransferHandler handler) byte[]
writeReadTransfer
(DHTTransportProgressListener listener, DHTTransportContact target, byte[] transfer_key, byte[] data, long timeout) void
writeTransfer
(DHTTransportProgressListener listener, DHTTransportContact target, byte[] handler_key, byte[] key, byte[] data, long timeout) private void
writeTransfer
(DHTTransportProgressListener listener, DHTTransportContact target, long connection_id, byte[] handler_key, byte[] key, byte[] data, long timeout)
-
Field Details
-
TRANSFER_QUEUE_MAX
private static final int TRANSFER_QUEUE_MAX- See Also:
-
MAX_TRANSFER_QUEUE_BYTES
private static final long MAX_TRANSFER_QUEUE_BYTES- See Also:
-
WRITE_XFER_RESEND_DELAY_BASE
private static final long WRITE_XFER_RESEND_DELAY_BASE- See Also:
-
READ_XFER_REREQUEST_DELAY_BASE
private static final long READ_XFER_REREQUEST_DELAY_BASE- See Also:
-
WRITE_REPLY_TIMEOUT_BASE
private static final long WRITE_REPLY_TIMEOUT_BASE- See Also:
-
WRITE_XFER_RESEND_DELAY
private final long WRITE_XFER_RESEND_DELAY -
READ_XFER_REREQUEST_DELAY
private final long READ_XFER_REREQUEST_DELAY -
WRITE_REPLY_TIMEOUT
final long WRITE_REPLY_TIMEOUT -
XFER_TRACE
private static final boolean XFER_TRACE- See Also:
-
transfer_handlers
-
read_transfers
-
write_transfers
-
last_xferq_log
private long last_xferq_log -
active_write_queue_processor_count
int active_write_queue_processor_count -
total_bytes_on_transfer_queues
long total_bytes_on_transfer_queues -
call_transfers
-
adapter
-
max_data
private final int max_data -
logger
-
this_mon
-
-
Constructor Details
-
DHTTransferHandler
-
DHTTransferHandler
public DHTTransferHandler(DHTTransferHandler.Adapter _adapter, int _max_data, float _latency_indicator, DHTLogger _logger)
-
-
Method Details
-
registerTransferHandler
-
registerTransferHandler
public void registerTransferHandler(byte[] handler_key, DHTTransportTransferHandler handler, Map<String, Object> options) -
unregisterTransferHandler
-
handleTransferRequest
protected int handleTransferRequest(DHTTransportContact target, long connection_id, byte[] transfer_key, byte[] request_key, byte[] data, int start, int length, boolean write_request, boolean first_packet_only) throws DHTTransportException - Throws:
DHTTransportException
-
receivePacket
-
readTransfer
public byte[] readTransfer(DHTTransportProgressListener listener, DHTTransportContact target, byte[] handler_key, byte[] key, long timeout) throws DHTTransportException - Throws:
DHTTransportException
-
runTransferQueue
protected byte[] runTransferQueue(DHTTransferHandler.transferQueue transfer_queue, DHTTransportProgressListener listener, DHTTransportContact target, byte[] handler_key, byte[] key, long timeout, boolean read_transfer) throws DHTTransportException - Throws:
DHTTransportException
-
writeTransfer
public void writeTransfer(DHTTransportProgressListener listener, DHTTransportContact target, byte[] handler_key, byte[] key, byte[] data, long timeout) throws DHTTransportException - Throws:
DHTTransportException
-
writeTransfer
private void writeTransfer(DHTTransportProgressListener listener, DHTTransportContact target, long connection_id, byte[] handler_key, byte[] key, byte[] data, long timeout) throws DHTTransportException - Throws:
DHTTransportException
-
writeReadTransfer
public byte[] writeReadTransfer(DHTTransportProgressListener listener, DHTTransportContact target, byte[] transfer_key, byte[] data, long timeout) throws DHTTransportException - Throws:
DHTTransportException
-
lookupTransferQueue
protected DHTTransferHandler.transferQueue lookupTransferQueue(Map<Long, DHTTransferHandler.transferQueue> transfers, long id) -
getMessageText
-
sendReadRequest
public void sendReadRequest(long connection_id, DHTTransportContact contact, byte[] transfer_key, byte[] key, int start_pos, int len) -
sendReadReply
public void sendReadReply(long connection_id, DHTTransportContact contact, byte[] transfer_key, byte[] key, byte[] data, int start_position, int length, int total_length) -
sendWriteRequest
public void sendWriteRequest(long connection_id, DHTTransportContact contact, byte[] transfer_key, byte[] key, byte[] data, int start_position, int length, int total_length) -
sendWriteReply
public void sendWriteReply(long connection_id, DHTTransportContact contact, byte[] transfer_key, byte[] key, int start_position, int length) -
log
-
log
-