diff --git a/VERSION.txt b/VERSION.txt
index 135f769fd8b..7f2ec374a0f 100644
--- a/VERSION.txt
+++ b/VERSION.txt
@@ -32,6 +32,7 @@ jetty-7.0.2-SNAPSHOT
+ JETTY-1184 shrink thread pool even with frequent small jobs
+ COMETD-46 reset ContentExchange response content on resend
+ Added IPAccessHandler
+ + Updated Servlet3Continuation to final 3.0.20100224
jetty-7.0.1.v20091125 25 November 2009
+ 274251 DefaultServlet supports exact match mode.
diff --git a/jetty-continuation/pom.xml b/jetty-continuation/pom.xml
index 2f602a40b83..cae514c8f4e 100644
--- a/jetty-continuation/pom.xml
+++ b/jetty-continuation/pom.xml
@@ -70,7 +70,7 @@
org.mortbay.jetty
servlet-api
- 3.0.PFD20090525
+ 3.0.20100224
provided
diff --git a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Servlet3Continuation.java b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Servlet3Continuation.java
index cc8013120c4..63b29b892b5 100644
--- a/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Servlet3Continuation.java
+++ b/jetty-continuation/src/main/java/org/eclipse/jetty/continuation/Servlet3Continuation.java
@@ -33,9 +33,19 @@ public class Servlet3Continuation implements Continuation
{
}
+ public void onError(AsyncEvent event) throws IOException
+ {
+ }
+
+ public void onStartAsync(AsyncEvent event) throws IOException
+ {
+ event.getAsyncContext().addListener(this);
+ }
+
public void onTimeout(AsyncEvent event) throws IOException
{
_initial=false;
+ event.getAsyncContext().dispatch();
}
};
@@ -48,17 +58,26 @@ public class Servlet3Continuation implements Continuation
{
_request=request;
}
-
public void addContinuationListener(final ContinuationListener listener)
{
- _request.addAsyncListener(new AsyncListener()
+ _context.addListener(new AsyncListener()
{
public void onComplete(final AsyncEvent event) throws IOException
{
listener.onComplete(Servlet3Continuation.this);
}
+ public void onError(AsyncEvent event) throws IOException
+ {
+ listener.onComplete(Servlet3Continuation.this);
+ }
+
+ public void onStartAsync(AsyncEvent event) throws IOException
+ {
+ event.getAsyncContext().addListener(this);
+ }
+
public void onTimeout(AsyncEvent event) throws IOException
{
_expired=true;
@@ -117,25 +136,25 @@ public class Servlet3Continuation implements Continuation
public void setTimeout(long timeoutMs)
{
- _request.setAsyncTimeout(timeoutMs);
+ _context.setTimeout(timeoutMs);
}
public void suspend(ServletResponse response)
{
_response=response;
_responseWrapped=response instanceof ServletResponseWrapper;
- _request.addAsyncListener(_listener);
_resumed=false;
_expired=false;
_context=_request.startAsync();
+ _context.addListener(_listener);
}
public void suspend()
{
- _request.addAsyncListener(_listener);
_resumed=false;
_expired=false;
_context=_request.startAsync();
+ _context.addListener(_listener);
}
public boolean isResponseWrapped()