Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimone Bordet2015-02-26 11:25:42 +0000
committerSimone Bordet2015-02-26 11:25:42 +0000
commit008b03ac78c685b1e858acf566f824da35a1fbca (patch)
treee45ae22c20ee9d1d839dc24385bc677bce3bca2b /jetty-client
parentd5a6ad23459d601e94f07a397a96d75c40179095 (diff)
downloadorg.eclipse.jetty.project-008b03ac78c685b1e858acf566f824da35a1fbca.tar.gz
org.eclipse.jetty.project-008b03ac78c685b1e858acf566f824da35a1fbca.tar.xz
org.eclipse.jetty.project-008b03ac78c685b1e858acf566f824da35a1fbca.zip
460905 - Make sure TimeoutCompleteListener is cancelled if the request cannot be sent.
Diffstat (limited to 'jetty-client')
-rw-r--r--jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java1
-rw-r--r--jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTimeoutTest.java24
2 files changed, 17 insertions, 8 deletions
diff --git a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java
index 79f7504802..0f68b039bb 100644
--- a/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java
+++ b/jetty-client/src/main/java/org/eclipse/jetty/client/HttpRequest.java
@@ -683,6 +683,7 @@ public class HttpRequest implements Request
// can't even start sending the request.
if (timeoutListener != null)
timeoutListener.cancel();
+ throw x;
}
}
diff --git a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTimeoutTest.java b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTimeoutTest.java
index 971ebf75b7..a715177ca9 100644
--- a/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTimeoutTest.java
+++ b/jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTimeoutTest.java
@@ -434,15 +434,23 @@ public class HttpClientTimeoutTest extends AbstractHttpClientServerTest
start(new EmptyServerHandler());
long timeout = 1000;
- Request request = client.newRequest("bad_scheme://localhost:" + connector.getLocalPort());
- request.timeout(timeout, TimeUnit.MILLISECONDS)
- .send(new Response.CompleteListener()
- {
- @Override
- public void onComplete(Result result)
+ Request request = client.newRequest("badscheme://localhost:" + connector.getLocalPort());
+
+ try
+ {
+ request.timeout(timeout, TimeUnit.MILLISECONDS)
+ .send(new Response.CompleteListener()
{
- }
- });
+ @Override
+ public void onComplete(Result result)
+ {
+ }
+ });
+ Assert.fail();
+ }
+ catch (Exception expected)
+ {
+ }
Thread.sleep(2 * timeout);

Back to the top