| writeRequest(NettyResponseFuture, Channel) |  | 0% |  | 0% | 10 | 10 | 32 | 32 | 1 | 1 |
| sendRequestWithOpenChannel(NettyResponseFuture, AsyncHandler, Channel) |  | 0% |  | 0% | 4 | 4 | 19 | 19 | 1 | 1 |
| applyIoExceptionFiltersAndReplayRequest(NettyResponseFuture, IOException, Channel) |  | 0% |  | 0% | 5 | 5 | 15 | 15 | 1 | 1 |
| retry(NettyResponseFuture) |  | 0% |  | 0% | 3 | 3 | 18 | 18 | 1 | 1 |
| sendRequestThroughProxy(Request, AsyncHandler, NettyResponseFuture, ProxyServer) |  | 0% |  | 0% | 5 | 5 | 11 | 11 | 1 | 1 |
| resolveAddresses(Request, ProxyServer, NettyResponseFuture, AsyncHandler) |   | 37% |   | 16% | 6 | 7 | 6 | 14 | 0 | 1 |
| sendRequestWithNewChannel(Request, ProxyServer, NettyResponseFuture, AsyncHandler) |   | 58% |   | 20% | 10 | 11 | 7 | 20 | 0 | 1 |
| replayRequest(NettyResponseFuture, FilterContext, Channel) |  | 0% | | n/a | 1 | 1 | 14 | 14 | 1 | 1 |
| handleUnexpectedClosedChannel(Channel, NettyResponseFuture) |  | 0% |  | 0% | 6 | 6 | 7 | 7 | 1 | 1 |
| sendRequest(Request, AsyncHandler, NettyResponseFuture) |   | 45% |   | 20% | 5 | 6 | 4 | 9 | 0 | 1 |
| isConnectAlreadyDone(Request, NettyResponseFuture) |  | 0% |  | 0% | 7 | 7 | 5 | 5 | 1 | 1 |
| validateWebSocketRequest(Request, AsyncHandler) |   | 42% |   | 30% | 4 | 6 | 4 | 10 | 0 | 1 |
| pollPooledChannel(Request, ProxyServer, AsyncHandler) |   | 48% |   | 50% | 1 | 2 | 3 | 10 | 0 | 1 |
| newNettyRequestAndResponseFuture(Request, AsyncHandler, NettyResponseFuture, ProxyServer, boolean) |   | 69% |   | 50% | 5 | 6 | 6 | 19 | 0 | 1 |
| sendRequestWithCertainForceConnect(Request, AsyncHandler, NettyResponseFuture, ProxyServer, boolean) |   | 66% |   | 50% | 1 | 2 | 2 | 7 | 0 | 1 |
| needConnect(Request, ProxyServer) |   | 22% |   | 12% | 4 | 5 | 1 | 3 | 0 | 1 |
| configureTransferAdapter(AsyncHandler, HttpRequest) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| getOpenChannel(NettyResponseFuture, Request, ProxyServer, AsyncHandler) |   | 44% |   | 16% | 3 | 4 | 1 | 3 | 0 | 1 |
| scheduleReadTimeout(NettyResponseFuture) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| drainChannelAndExecuteNextRequest(Channel, NettyResponseFuture, Request, Future) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| drainChannelAndExecuteNextRequest(Channel, NettyResponseFuture, Request) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| sendNextRequest(Request, NettyResponseFuture) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| abort(Channel, NettyResponseFuture, Throwable) |   | 75% |   | 33% | 3 | 4 | 2 | 9 | 0 | 1 |
| NettyRequestSender(AsyncHttpClientConfig, ChannelManager, Timer, AsyncHttpClientState) |   | 88% |   | 50% | 1 | 2 | 0 | 10 | 0 | 1 |
| newNettyResponseFuture(Request, AsyncHandler, NettyRequest, ProxyServer) |   | 89% |   | 50% | 1 | 2 | 1 | 7 | 0 | 1 |
| scheduleRequestTimeout(NettyResponseFuture, InetSocketAddress) |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| isClosed() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| static {...} |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |