Author: remm
Date: Thu Aug 17 06:22:44 2006
New Revision: 432230
URL: http://svn.apache.org/viewvc?rev=432230&view=rev
Log:
- Calling allocate for no reason was not a very good idea (adding an accessor
instead for now, bleh).
- Simplify the event method.
Modified:
tomcat/tc6.0.x/trunk/java/org/apache/catalina/Wrapper.java
tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
tomcat/tc6.0.x/trunk/java/org/apache/catalina/core/StandardWrapper.java
Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/Wrapper.java
URL:
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/Wrapper.java?rev=432230&r1=432229&r2=432230&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/catalina/Wrapper.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/Wrapper.java Thu Aug 17
06:22:44 2006
@@ -217,6 +217,12 @@
/**
+ * Return the associated servlet instance.
+ */
+ public Servlet getServlet();
+
+
+ /**
* Return the value for the specified initialization parameter name,
* if any; otherwise return <code>null</code>.
*
Modified:
tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
URL:
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java?rev=432230&r1=432229&r2=432230&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
(original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
Thu Aug 17 06:22:44 2006
@@ -19,6 +19,8 @@
import java.io.IOException;
+import javax.servlet.Servlet;
+
import org.apache.catalina.CometProcessor;
import org.apache.catalina.Context;
import org.apache.catalina.Globals;
@@ -117,25 +119,16 @@
if (request.getWrapper() != null) {
+ CometProcessor servlet = null;
+
// Bind the context CL to the current thread
if (request.getContext().getLoader() != null ) {
Thread.currentThread().setContextClassLoader
(request.getContext().getLoader().getClassLoader());
}
- CometProcessor servlet = null;
try {
servlet = (CometProcessor) request.getWrapper().allocate();
- } catch (Throwable t) {
- log.error(sm.getString("coyoteAdapter.service"), t);
- request.recycle();
- response.recycle();
- // Restore the context classloader
- Thread.currentThread().setContextClassLoader
- (CoyoteAdapter.class.getClassLoader());
- return false;
- }
- try {
if (error) {
servlet.error(request.getRequest(),
response.getResponse());
} else {
@@ -167,6 +160,11 @@
// Restore the context classloader
Thread.currentThread().setContextClassLoader
(CoyoteAdapter.class.getClassLoader());
+ try {
+ request.getWrapper().deallocate((Servlet) servlet);
+ } catch (Exception e) {
+ log.error(sm.getString("coyoteAdapter.service"), e);
+ }
// Recycle the wrapper request and response
if (error || response.isClosed()) {
request.recycle();
@@ -225,7 +223,7 @@
connector.getContainer().getPipeline().getFirst().invoke(request, response);
}
- if (request.getWrapper().allocate() instanceof CometProcessor
+ if (request.getWrapper().getServlet() instanceof CometProcessor
&& !response.isClosed()) {
comet = true;
res.action(ActionCode.ACTION_COMET_BEGIN, null);
Modified:
tomcat/tc6.0.x/trunk/java/org/apache/catalina/core/StandardWrapper.java
URL:
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/core/StandardWrapper.java?rev=432230&r1=432229&r2=432230&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/catalina/core/StandardWrapper.java
(original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/core/StandardWrapper.java Thu
Aug 17 06:22:44 2006
@@ -750,6 +750,14 @@
/**
+ * Return the associated servlet instance.
+ */
+ public Servlet getServlet() {
+ return instance;
+ }
+
+
+ /**
* Allocate an initialized instance of this Servlet that is ready to have
* its <code>service()</code> method called. If the servlet class does
* not implement <code>SingleThreadModel</code>, the (only) initialized
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]