diff --git a/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/BasicHttpAsyncResponseConsumer.java b/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/BasicHttpAsyncResponseConsumer.java
index 01de936..83b4e74 100644
--- a/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/BasicHttpAsyncResponseConsumer.java
+++ b/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/BasicHttpAsyncResponseConsumer.java
@@ -124,10 +124,6 @@
         releaseResources();
     }
 
-    public boolean isDone() {
-        return this.completed;
-    }
-
     public Exception getException() {
         return this.ex;
     }
diff --git a/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/DefaultAsyncRequestDirector.java b/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/DefaultAsyncRequestDirector.java
index 761389e..5a5c1c4 100644
--- a/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/DefaultAsyncRequestDirector.java
+++ b/httpasyncclient/src/main/java/org/apache/http/impl/nio/client/DefaultAsyncRequestDirector.java
@@ -339,11 +339,9 @@
 
             if (this.finalResponse != null) {
                 this.responseConsumer.responseCompleted();
-                if (this.responseConsumer.isDone()) {
-                    this.log.debug("Response processed");
-                    this.resultFuture.completed(this.responseConsumer.getResult());
-                    releaseResources();
-                }
+                this.log.debug("Response processed");
+                this.resultFuture.completed(this.responseConsumer.getResult());
+                releaseResources();
             } else {
                 if (this.followup != null) {
                     HttpRoute actualRoute = this.mainRequest.getRoute();
@@ -381,7 +379,7 @@
     }
 
     public boolean isDone() {
-        return this.responseConsumer.isDone();
+        return this.resultFuture.isDone();
     }
 
     public T getResult() {
diff --git a/httpasyncclient/src/main/java/org/apache/http/nio/client/HttpAsyncExchangeHandler.java b/httpasyncclient/src/main/java/org/apache/http/nio/client/HttpAsyncExchangeHandler.java
index f22439e..59ddcc8 100644
--- a/httpasyncclient/src/main/java/org/apache/http/nio/client/HttpAsyncExchangeHandler.java
+++ b/httpasyncclient/src/main/java/org/apache/http/nio/client/HttpAsyncExchangeHandler.java
@@ -31,6 +31,8 @@
 public interface HttpAsyncExchangeHandler<T>
     extends HttpAsyncRequestProducer, HttpAsyncResponseConsumer<T> {
 
+    boolean isDone();
+
     boolean keepAlive(HttpResponse response);
 
 }
diff --git a/httpasyncclient/src/main/java/org/apache/http/nio/client/HttpAsyncResponseConsumer.java b/httpasyncclient/src/main/java/org/apache/http/nio/client/HttpAsyncResponseConsumer.java
index fa66155..173f4f6 100644
--- a/httpasyncclient/src/main/java/org/apache/http/nio/client/HttpAsyncResponseConsumer.java
+++ b/httpasyncclient/src/main/java/org/apache/http/nio/client/HttpAsyncResponseConsumer.java
@@ -45,8 +45,6 @@
 
     void cancel();
 
-    boolean isDone();
-
     T getResult();
 
 }
