Package com.biglybt.core.networkmanager
Interface NetworkConnection
- All Superinterfaces:
ControllerAllocationManagement,NetworkConnectionBase
- All Known Implementing Classes:
NetworkConnectionImpl
Represents a managed network connection, over which messages can be sent and received.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceListener for notification of connection events. -
Field Summary
Fields inherited from interface com.biglybt.core.networkmanager.ControllerAllocationManagement
UNALLOCATED_PARTITION -
Method Summary
Modifier and TypeMethodDescriptionvoidClose and shutdown this connection.voidconnect(int priority, NetworkConnection.ConnectionListener listener) Connect this connection's transport, i.e.voidconnect(ByteBuffer initial_outbound_data, int priority, NetworkConnection.ConnectionListener listener) Decouples the transport from this network connection so it can be reusedvoidenableEnhancedMessageProcessing(boolean enable, int partition_id) Upgrade the connection to high-speed transfer processing.Get the connection's data transport interface.getUserData(Object key) booleansetUserData(Object key, Object value) voidBegin processing incoming and outgoing message queues.Methods inherited from interface com.biglybt.core.networkmanager.ControllerAllocationManagement
activeReadControllerRelease, activeWriteControllerRelease, isReadControllerActive, isWriteControllerActive, setReadControllerInactive, setTargetReadControllerPartition, setTargetWriteControllerPartition, setWriteControllerInactiveMethods inherited from interface com.biglybt.core.networkmanager.NetworkConnectionBase
addRateLimiter, getDownloadLimit, getEndpoint, getIncomingMessageQueue, getMssSize, getOutgoingMessageQueue, getPartitionID, getRateLimiters, getString, getTransportBase, getUploadLimit, isClosed, isIncoming, isLANLocal, notifyOfException, removeRateLimiter, resetLANLocalStatus, setDownloadLimit, setUploadLimit
-
Method Details
-
connect
Connect this connection's transport, i.e. establish the network connection. If this connection is already established (from an incoming connection for example), then this provides a mechanism to register the connection listener, in which case connectSuccess() will be called immediately.- Parameters:
listener- notified on connect success or failure
-
connect
void connect(ByteBuffer initial_outbound_data, int priority, NetworkConnection.ConnectionListener listener) -
close
Close and shutdown this connection. -
startMessageProcessing
void startMessageProcessing()Begin processing incoming and outgoing message queues.- Parameters:
upload_group- upload rate limit group to usedownload_group- download rate limit group to use
-
enableEnhancedMessageProcessing
void enableEnhancedMessageProcessing(boolean enable, int partition_id) Upgrade the connection to high-speed transfer processing.- Parameters:
enable- true for high-speed processing, false for normal processing
-
detachTransport
Transport detachTransport()Decouples the transport from this network connection so it can be reused- Returns:
- null if detach failed
-
getTransport
Transport getTransport()Get the connection's data transport interface.- Returns:
- the transport - MAY BE NULL if not yet fully connected
-
isConnected
boolean isConnected() -
setUserData
-
getUserData
-