Class HTTPNetworkConnection
java.lang.Object
com.biglybt.core.networkmanager.impl.http.HTTPNetworkConnection
- Direct Known Subclasses:
HTTPNetworkConnectionFile
,HTTPNetworkConnectionWebSeed
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static interface
protected static class
protected class
private static class
protected static interface
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate boolean
private boolean
(package private) final NetworkConnection
private String
private static final int
private final HTTPMessageDecoder
private static final String
private boolean
private final HTTPMessageEncoder
private static final String
private static final String
private static final String
(package private) static final Map
<HTTPNetworkConnection.networkConnectionKey, List<HTTPNetworkConnection>> private final List
<HTTPNetworkConnection.httpRequest> private long
private final String
protected static final LogIDs
private final HTTPNetworkManager
private static final int
private static final int
(package private) static int
private final HTTPNetworkConnection.networkConnectionKey
protected static final String
private final List
<HTTPNetworkConnection.pendingRequest> (package private) final PEPeerTransport
private final byte[]
private final BitSet
(package private) CopyOnWriteList
<HTTPNetworkConnection.requestListener> private boolean
private static final int
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
HTTPNetworkConnection
(HTTPNetworkManager _manager, NetworkConnection _connection, PEPeerTransport _peer) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addBTRequest
(BTRequest request, HTTPNetworkConnection.httpRequest http_request) protected void
protected static boolean
checkConnections
(List<HTTPNetworkConnection> connections) protected void
protected abstract void
decodeHeader
(HTTPMessageDecoder decoder, String header) protected void
destroy()
protected RawMessage
protected RawMessage
protected RawMessage
encodeHandShake
(Message message) protected String
protected RawMessage[]
encodePiece
(Message message) protected RawMessage
protected void
protected void
protected NetworkConnection
protected RawMessage
getEmptyRawMessage
(Message message) protected HTTPNetworkManager
protected PEPeerTransport
getPeer()
protected PEPeerControl
protected int
protected long
protected boolean
protected boolean
isSeed()
protected void
protected void
protected void
sendAndClose
(String data) protected void
setContentType
(String ct) protected void
-
Field Details
-
LOGID
-
MAX_OUTSTANDING_BT_REQUESTS
private static final int MAX_OUTSTANDING_BT_REQUESTS- See Also:
-
NL
- See Also:
-
HDR_SERVER
- See Also:
-
HDR_KEEP_ALIVE_TIMEOUT
- See Also:
-
HDR_CACHE_CONTROL
- See Also:
-
DEFAULT_CONTENT_TYPE
-
max_read_block_size
static int max_read_block_size -
TIMEOUT_CHECK_PERIOD
private static final int TIMEOUT_CHECK_PERIOD- See Also:
-
DEAD_CONNECTION_TIMEOUT_PERIOD
private static final int DEAD_CONNECTION_TIMEOUT_PERIOD- See Also:
-
MAX_CON_PER_ENDPOINT
private static final int MAX_CON_PER_ENDPOINT- See Also:
-
http_connection_map
static final Map<HTTPNetworkConnection.networkConnectionKey,List<HTTPNetworkConnection>> http_connection_map -
manager
-
connection
-
peer
-
decoder
-
encoder
-
sent_handshake
private boolean sent_handshake -
peer_id
private final byte[] peer_id -
choked
private boolean choked -
http_requests
-
choked_requests
-
outstanding_requests
-
piece_map
-
last_http_activity_time
private long last_http_activity_time -
network_connection_key
-
closing
private boolean closing -
destroyed
private boolean destroyed -
last_modified_date
-
content_type
-
request_listeners
CopyOnWriteList<HTTPNetworkConnection.requestListener> request_listeners
-
-
Constructor Details
-
HTTPNetworkConnection
protected HTTPNetworkConnection(HTTPNetworkManager _manager, NetworkConnection _connection, PEPeerTransport _peer)
-
-
Method Details
-
checkConnections
-
isSeed
protected boolean isSeed() -
setContentType
-
getManager
-
getConnection
-
getPeer
-
getPeerControl
-
encodeChoke
-
encodeUnchoke
-
encodeBitField
-
readWakeup
protected void readWakeup() -
encodeHandShake
-
decodeHeader
- Throws:
IOException
-
encodeHeader
-
addRequest
- Throws:
IOException
-
submitBTRequests
- Throws:
IOException
-
addBTRequest
protected void addBTRequest(BTRequest request, HTTPNetworkConnection.httpRequest http_request) throws IOException - Throws:
IOException
-
encodePiece
-
getRequestCount
protected int getRequestCount() -
isClosing
protected boolean isClosing() -
close
-
destroy
protected void destroy() -
getTimeSinceLastActivity
protected long getTimeSinceLastActivity() -
log
-
getEmptyRawMessage
-
sendAndClose
-
flushRequests
-
flushRequestsSupport
-