You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Siqi Li (Jira)" <ji...@apache.org> on 2020/03/05 18:59:00 UTC
[jira] [Created] (HTTPCLIENT-2057) [5.0] Potential cleanup for
CloseableHttpAsyncClient#execute(SimpleHttpRequest, HttpContext,
FutureCallback)
Siqi Li created HTTPCLIENT-2057:
-----------------------------------
Summary: [5.0] Potential cleanup for CloseableHttpAsyncClient#execute(SimpleHttpRequest, HttpContext, FutureCallback)
Key: HTTPCLIENT-2057
URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2057
Project: HttpComponents HttpClient
Issue Type: Improvement
Components: HttpClient (async)
Affects Versions: 5.0
Reporter: Siqi Li
The source code for CloseableHttpAsyncClient#execute(SimpleHttpRequest, HttpContext, FutureCallback) looks like this:
{code:java}
public final Future<SimpleHttpResponse> execute(
final SimpleHttpRequest request,
final HttpContext context,
final FutureCallback<SimpleHttpResponse> callback) {
Args.notNull(request, "Request");
final BasicFuture<SimpleHttpResponse> future = new BasicFuture<>(callback);
execute(SimpleRequestProducer.create(request), SimpleResponseConsumer.create(), context, new FutureCallback<SimpleHttpResponse>() { @Override
public void completed(final SimpleHttpResponse response) {
future.completed(response);
} @Override
public void failed(final Exception ex) {
future.failed(ex);
} @Override
public void cancelled() {
future.cancel(true);
} });
return future;
}{code}
To me this looks more complicated than it needs to be. I think it can be replaced with just:
{code:java}
public final Future<SimpleHttpResponse> execute(
final SimpleHttpRequest request,
final HttpContext context,
final FutureCallback<SimpleHttpResponse> callback) {
Args.notNull(request, "Request");
return execute(SimpleRequestProducer.create(request), SimpleResponseConsumer.create(), context, callback);
}
{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org