Repository: tomee
Updated Branches:
  refs/heads/develop de9cd659e -> ebaf1b0f0


ensuring @Suspended works with opeenjb-http


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/91e6ba6c
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/91e6ba6c
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/91e6ba6c

Branch: refs/heads/develop
Commit: 91e6ba6c324aab8a80a76064f657e80bfdf3291e
Parents: de9cd65
Author: Romain Manni-Bucau <[email protected]>
Authored: Tue Feb 10 15:13:23 2015 +0100
Committer: Romain Manni-Bucau <[email protected]>
Committed: Tue Feb 10 15:13:23 2015 +0100

----------------------------------------------------------------------
 .../server/httpd/OpenEJBAsyncContext.java       | 38 ++++++++++++++++++++
 1 file changed, 38 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/91e6ba6c/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/OpenEJBAsyncContext.java
----------------------------------------------------------------------
diff --git 
a/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/OpenEJBAsyncContext.java
 
b/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/OpenEJBAsyncContext.java
index 06c85e2..979e123 100644
--- 
a/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/OpenEJBAsyncContext.java
+++ 
b/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/OpenEJBAsyncContext.java
@@ -38,7 +38,9 @@ import java.net.HttpURLConnection;
 import java.net.Socket;
 import java.net.URI;
 import java.util.ArrayList;
+import java.util.Enumeration;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.CopyOnWriteArraySet;
 import java.util.concurrent.Executors;
@@ -262,6 +264,41 @@ public class OpenEJBAsyncContext implements AsyncContext {
                 }
 
                 @Override
+                public Object getAttribute(final String name) {
+                    return request.getAttribute(name);
+                }
+
+                @Override
+                public Enumeration<String> getAttributeNames() {
+                    return request.getAttributeNames();
+                }
+
+                @Override
+                public void setAttribute(final String name, final Object 
value) {
+                    request.setAttribute(name, value);
+                }
+
+                @Override
+                public String getHeader(final String name) {
+                    return request.getHeader(name);
+                }
+
+                @Override
+                public Enumeration<String> getHeaderNames() {
+                    return request.getHeaderNames();
+                }
+
+                @Override
+                public Enumeration<String> getHeaders(final String s) {
+                    return request.getHeaders(s);
+                }
+
+                @Override
+                public int getIntHeader(final String s) {
+                    return request.getIntHeader(s);
+                }
+
+                @Override
                 public String getMethod() {
                     return request.getMethod();
                 }
@@ -269,6 +306,7 @@ public class OpenEJBAsyncContext implements AsyncContext {
             if (HttpRequestImpl.class.isInstance(request)) { // needed for 
some advanced cases like async
                 req.setUri(HttpRequestImpl.class.cast(request).getURI());
             }
+            req.setAttribute("openejb_async_dispatch", true);
             registry.onMessage(req, HttpResponse.class.isInstance(response) ? 
HttpResponse.class.cast(response) : new 
ServletResponseAdapter(HttpServletResponse.class.cast(response)));
             complete();
         } catch (final Exception e) {

Reply via email to