svn commit: r1177955 - /tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 10:48:35 2011
New Revision: 1177955

URL: http://svn.apache.org/viewvc?rev=1177955&view=rev
Log:
Add release date for 7.0.22

Modified:
tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml

Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1177955&r1=1177954&r2=1177955&view=diff
==
--- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Sat Oct  1 10:48:35 2011
@@ -71,7 +71,7 @@
 
   
 
-
+
   
 
   



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1177959 - in /tomcat/site/trunk: docs/download-70.html docs/index.html docs/migration.html docs/oldnews.html docs/whichversion.html xdocs/download-70.xml xdocs/index.xml xdocs/migration.x

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 10:59:35 2011
New Revision: 1177959

URL: http://svn.apache.org/viewvc?rev=1177959&view=rev
Log:
Updates for 7.0.22 release

Modified:
tomcat/site/trunk/docs/download-70.html
tomcat/site/trunk/docs/index.html
tomcat/site/trunk/docs/migration.html
tomcat/site/trunk/docs/oldnews.html
tomcat/site/trunk/docs/whichversion.html
tomcat/site/trunk/xdocs/download-70.xml
tomcat/site/trunk/xdocs/index.xml
tomcat/site/trunk/xdocs/migration.xml
tomcat/site/trunk/xdocs/oldnews.xml
tomcat/site/trunk/xdocs/whichversion.xml

Modified: tomcat/site/trunk/docs/download-70.html
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/docs/download-70.html?rev=1177959&r1=1177958&r2=1177959&view=diff
==
--- tomcat/site/trunk/docs/download-70.html (original)
+++ tomcat/site/trunk/docs/download-70.html Sat Oct  1 10:59:35 2011
@@ -244,8 +244,8 @@
 
 
 http://www.apache.org/dist/tomcat/tomcat-7/KEYS";>KEYS |
-7.0.21 |
-Browse 
|
+7.0.22 |
+Browse 
|
 http://archive.apache.org/dist/tomcat/tomcat-7";>Archives
   
 
@@ -345,8 +345,8 @@
 
 
 
-
-7.0.21
+
+7.0.22
 
 
 
@@ -356,8 +356,8 @@
 
 
   
-  Please see the 
-  README
+  Please see the 
+  README
   file for packaging information.  It explains what every distribution 
contains.
   
 
@@ -381,95 +381,95 @@
 Core:
   
   
-zip 
-(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21.zip.asc";>pgp,
 
-http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21.zip.md5";>md5)
+zip 
+(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22.zip.asc";>pgp,
 
+http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22.zip.md5";>md5)
   
   
-tar.gz 
-(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21.tar.gz.asc";>pgp,
 
-http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21.tar.gz.md5";>md5)
+tar.gz 
+(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22.tar.gz.asc";>pgp,
 
+http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22.tar.gz.md5";>md5)
   
   
-32-bit Windows zip 
-(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21-windows-x86.zip.asc";>pgp,
 
-http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21-windows-x86.zip.md5";>md5)
+32-bit Windows zip 
+(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22-windows-x86.zip.asc";>pgp,
 
+http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22-windows-x86.zip.md5";>md5)
   
   
-64-bit Windows zip 
-(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21-windows-x64.zip.asc";>pgp,
 
-http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21-windows-x64.zip.md5";>md5)
+64-bit Windows zip 
+(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22-windows-x64.zip.asc";>pgp,
 
+http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22-windows-x64.zip.md5";>md5)
   
   
-64-bit Itanium Windows zip 
-(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21-windows-i64.zip.asc";>pgp,
 
-http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21-windows-i64.zip.md5";>md5)
+64-bit Itanium Windows zip 
+(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22-windows-i64.zip.asc";>pgp,
 
+http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22-windows-i64.zip.md5";>md5)
   
   
-32-bit/64-bit Windows Service Installer 
-(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21.exe.asc";>pgp,
 
-http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21.exe.md5";>md5)
+32-bit/64-bit Windows Service Installer 
+(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22.exe.asc";>pgp,
 
+http://www.apache.org/dist/tomcat/tomcat-7/v7.0.22/bin/apache-tomcat-7.0.22.exe.md5";>md5)
   
   
 
 Full documentation:
   
   
-tar.gz 
-(http://www.apache.org/dist/tomcat/tomcat-7/v7.0.21/bin/apache-tomcat-7.0.21-fulldocs.tar.gz.asc";>pgp,
 
-http://www.apache.org/dist/tomcat/tom

Re: Comet API

2011-10-01 Thread Konstantin Kolinko
2011/10/1 Konstantin Kolinko :
> Hi!
>
> I was reading the Comet API documentation, that is "aio.html" in the
> docs and Javadoc of catalina.comet.* classes.
>
> Here are several notes.
>

Answering several of my notes below.

>
> CometEvent.java:
> ===
> - #setTimeout():
>  a) @param timeout says it is positive value.
>
> With recent Mark's fixes to timeout handling it also accepts "-1" as
> the infinite timeout. It works great with Nio.
> (I'll add setting -1 timeout to ChatServlet.).
>
> With Http11AprProtocol you cannot set timeout: the method throws
> java.lang.UnsupportedOperationException.
>
> I think the value of "0" shall still be undocumented (I do not know
> what it will do and it does not seem to be useful), so just "-1" can
> be added.
>
> b) Javadoc here says:
>    "The
>     web application SHOULD NOT attempt to reuse the request and
> response objects after a timeout
>     as the error(HttpServletRequest,
> HttpServletResponse) method indicates."
>
> It contradicts with description of EventSubType TIMEOUT here and in
> aio.html, that says that this event is not fatal and
> "the connection will not be closed unless the servlet uses the close
> method of the event".
>
> c) I am not sure whether setTimeout() can be called in READ event. The
> Javadoc here says just that it cannot be called outside of events
> ("asynchronously"), but aio.html explicitly mentions that BEGIN event
> should be used to call setTimeout().
>
> d) In "Comet timeouts" section in aio.html it is said that the default
> timeout for "soTimeout" for Nio and "soTimeout*50" for Apr. I have not
> looked where it is actually set in the code,  but in HTTP Connector
> documentation there is not attribute "soTimeout"
>
> - #close():
> a) "The servlet should perform any needed cleanup as if it had
> received an END or ERROR event."
>
> Does it need to perform the cleanup?
>
> The description of EventType.READ event here and in aio.html also
> mentions to perform cleanup before calling cose().
>
> From description of SESSION_END subtype of END event my understanding
> would be that
> it would receive it (maybe unless it was called in END or ERROR
> events) and could cleanup there.
>
> So, what SESSION_END is for?
>
> - (Javadoc for EventType, EventSubType has no , and thus will
> be unreadable.)
> - (In SESSION_END do s/session/Comet session/ and do the same
> replacement in aio.html, to avoid ambiguity).
>
> CometProcessor
> 
> a) ("When this interface is implemented, the service method of the servlet 
> will
>  never be called".
>
> -Actually the service() method will be called - It is called if the
> connector does not support Comet,
> as ChatServlet example shows. The same applies to CometFilter as well
> ).
>
> aio.html
> ==
> a) Is CometEvent object available only as an argument of the event() method?
>
> Can it be stored by cometprocessor between the events that it receives?
> Or only HttpServletResponse and HttpServletRequest can be stored and
> reused between events?
>
> Thus, can a servlet call the CometEvent.close() method while it is
> between events?
>
> b) Can CometProcessor#event() be called for several events for the same
> request&response pair at the same time? I guess that it cannot happen.
>
> c) It is said "At any time, the servlet may end processing of the
> request by using the close method of the event object."
>
> Nothing is said about such methods of Servlet API as
> OutputStream.close(), InputStream.close().
> I guess they should result in receiving an END event, and in the END
> event the sevlet will call CometEvent.close() to stop Comet
> processing.
>
> d) It is good to know that many Response methods will throw
> IllegalStateException as aio.html clearly says that the response is
> committed after BEGIN event.
>
> What if we never called flush() on the output stream? Is it still "committed"?
>
> If it is committed only "after BEGIN event",
> can the servlet or filter call response.sendError() while it is in BEGIN 
> event?
>
> e) If a Connector is stopped, will it be SERVER_SHUTDOWN subtype of END event.
> Though I think that during shutdown maybe WEBAPP_RELOAD will come first?
> Will the event come if connector is stopped through JMX?
> When a web application is stopped will it be WEBAPP_RELOAD?
>
> Can these events come asynchronously with regards to other
> BEGIN/READ/END/ERROR events for the same request&response pair?
>

1. CometEventImpl is 1:1 associated with o.a.c.connector.Request.

It is created by Request.getEvent()

2. CometEventImpl is passed further as is.

There is no recyclable facade around it.

3. WEBAPP_RELOAD subtype of END event is created by CometConnectionManagerValve.
It is fired on BEFORE_STOP_EVENT.
4. CometConnectionManagerValve.keeps list of all Request objects that
are using comet (in this webapp), as well as keeps sublists of it in
HttpSessions (in this webapp).
5. WEBAPP_RELOAD subtype of END event is fired asynchronously, without
any r

[ANN] Apache Tomcat 7.0.22 released

2011-10-01 Thread Mark Thomas
The Apache Tomcat team announces the immediate availability of Apache
Tomcat 7.0.22

Apache Tomcat 7.0.22 includes bug fixes and new features compared to
version 7.0.21 including:
- Further improvements to the memory leak detection and prevention features.
- Fix issue that prevented using SSL with the HTTP BIO connector and Java 7.
- Add support for controlling which session attributes are replicated
when using session replication (a.k.a clustering).


Please refer to the change log for the complete list of changes:
http://tomcat.apache.org/tomcat-7.0-doc/changelog.html

Note that this version has 4 zip binaries: a generic one and three
bundled with Tomcat native binaries for Windows operating systems
running on different CPU architectures.

Downloads:
http://tomcat.apache.org/download-70.cgi

Migration guide from Apache Tomcat 5.5.x and 6.0.x:
http://tomcat.apache.org/migration.html

Thank you,

-- The Apache Tomcat Team




-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1177978 - /tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 13:42:16 2011
New Revision: 1177978

URL: http://svn.apache.org/viewvc?rev=1177978&view=rev
Log:
Merge branch 'bug51910' into trunk

Modified:
tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java

Modified: tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java?rev=1177978&r1=1177977&r2=1177978&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java Sat 
Oct  1 13:42:16 2011
@@ -349,7 +349,13 @@ final class StandardWrapperValve
 // This should be a Request attribute...
 long t1=System.currentTimeMillis();
 // FIXME: Add a flag to count the total amount of events processed ? 
requestCount++;
+
 StandardWrapper wrapper = (StandardWrapper) getContainer();
+if (wrapper == null) {
+// Context has been shutdown. Nothing to do here.
+return;
+}
+
 Servlet servlet = null;
 Context context = (Context) wrapper.getParent();
 



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: svn commit: r1177978 - /tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java

2011-10-01 Thread Mark Thomas
On 01/10/2011 09:42, ma...@apache.org wrote:
> Author: markt
> Date: Sat Oct  1 13:42:16 2011
> New Revision: 1177978
> 
> URL: http://svn.apache.org/viewvc?rev=1177978&view=rev
> Log:
> Merge branch 'bug51910' into trunk

I'm experimenting with using git. Apologies if some of the commit
comments end up looking a little strange.

Mark

> 
> Modified:
> tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java
> 
> Modified: tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java
> URL: 
> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java?rev=1177978&r1=1177977&r2=1177978&view=diff
> ==
> --- tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java 
> (original)
> +++ tomcat/trunk/java/org/apache/catalina/core/StandardWrapperValve.java Sat 
> Oct  1 13:42:16 2011
> @@ -349,7 +349,13 @@ final class StandardWrapperValve
>  // This should be a Request attribute...
>  long t1=System.currentTimeMillis();
>  // FIXME: Add a flag to count the total amount of events processed ? 
> requestCount++;
> +
>  StandardWrapper wrapper = (StandardWrapper) getContainer();
> +if (wrapper == null) {
> +// Context has been shutdown. Nothing to do here.
> +return;
> +}
> +
>  Servlet servlet = null;
>  Context context = (Context) wrapper.getParent();
>  
> 
> 
> 
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
> 


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1177979 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/core/StandardWrapperValve.java webapps/docs/changelog.xml

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 13:51:13 2011
New Revision: 1177979

URL: http://svn.apache.org/viewvc?rev=1177979&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=51910
Prevent NPE on connector stop if Comet applications are being used without the 
CometConnectionManagerValve.

Modified:
tomcat/tc7.0.x/trunk/   (props changed)
tomcat/tc7.0.x/trunk/java/org/apache/catalina/core/StandardWrapperValve.java
tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml

Propchange: tomcat/tc7.0.x/trunk/
--
--- svn:mergeinfo (original)
+++ svn:mergeinfo Sat Oct  1 13:51:13 2011
@@ -1 +1 @@
-/tomcat/trunk:1156115,1156171,1156276,1156304,1156519,1156530,1156602,1157015,1157018,1157151,1157198,1157204,1157810,1157832,1157834,1157847,1157908,1157939,1158155,1158160,1158176,1158195,1158198-1158199,1158227,1158331,1158334-1158335,1158426,1160347,1160592,1160611,1160619,1160626,1160639,1160652,1160720-1160721,1160772,1160774,1160776,1161303,1161310,1161322,1161339,1161486,1161540,1161549,1161584,1162082,1162149,1162169,1162721,1162769,1162836,1162932,1163630,1164419,1164438,1164469,1164480,1164567,1165234,1165247-1165248,1165253,1165273,1165282,1165309,1165331,1165338,1165347,1165360-1165361,1165367-1165368,1165602,1165608,1165677,1165693,1165721,1165723,1165728,1165730,1165738,1165746,1165765,1165777,1165918,1165921,1166077,1166150-1166151,1166290,1166366,1166620,1166686,1166752,1166757,1167368,1167394,1169447,1170647,1171692,1172233-1172234,1172236,1172269,1172278,1172282,1172610,1172664,1172689,1172711,1173020-1173021,1173082,1173088,1173090,1173096,1173241,1173256
 
,1173288,117,1173342,1173461,1173614,1173630,1173659,1173722,1174061,1174239,1174322,1174325,1174329-1174330,1174337-1174339,1174343,1174353,1174799,1174882,1174884,1174983,1175155,1175158,1175167,1175182,1175190,1175201,1175272,1175275,1175283,1175582,1175589-1175590,1175594,1175602,1175613,1175633,1175713,1175889,1175896,1175907,1176584,1176590,1176799,1177050,1177060,1177125,1177152,1177160,1177245
+/tomcat/trunk:1156115,1156171,1156276,1156304,1156519,1156530,1156602,1157015,1157018,1157151,1157198,1157204,1157810,1157832,1157834,1157847,1157908,1157939,1158155,1158160,1158176,1158195,1158198-1158199,1158227,1158331,1158334-1158335,1158426,1160347,1160592,1160611,1160619,1160626,1160639,1160652,1160720-1160721,1160772,1160774,1160776,1161303,1161310,1161322,1161339,1161486,1161540,1161549,1161584,1162082,1162149,1162169,1162721,1162769,1162836,1162932,1163630,1164419,1164438,1164469,1164480,1164567,1165234,1165247-1165248,1165253,1165273,1165282,1165309,1165331,1165338,1165347,1165360-1165361,1165367-1165368,1165602,1165608,1165677,1165693,1165721,1165723,1165728,1165730,1165738,1165746,1165765,1165777,1165918,1165921,1166077,1166150-1166151,1166290,1166366,1166620,1166686,1166752,1166757,1167368,1167394,1169447,1170647,1171692,1172233-1172234,1172236,1172269,1172278,1172282,1172610,1172664,1172689,1172711,1173020-1173021,1173082,1173088,1173090,1173096,1173241,1173256
 
,1173288,117,1173342,1173461,1173614,1173630,1173659,1173722,1174061,1174239,1174322,1174325,1174329-1174330,1174337-1174339,1174343,1174353,1174799,1174882,1174884,1174983,1175155,1175158,1175167,1175182,1175190,1175201,1175272,1175275,1175283,1175582,1175589-1175590,1175594,1175602,1175613,1175633,1175713,1175889,1175896,1175907,1176584,1176590,1176799,1177050,1177060,1177125,1177152,1177160,1177245,1177978

Modified: 
tomcat/tc7.0.x/trunk/java/org/apache/catalina/core/StandardWrapperValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/core/StandardWrapperValve.java?rev=1177979&r1=1177978&r2=1177979&view=diff
==
--- 
tomcat/tc7.0.x/trunk/java/org/apache/catalina/core/StandardWrapperValve.java 
(original)
+++ 
tomcat/tc7.0.x/trunk/java/org/apache/catalina/core/StandardWrapperValve.java 
Sat Oct  1 13:51:13 2011
@@ -349,7 +349,13 @@ final class StandardWrapperValve
 // This should be a Request attribute...
 long t1=System.currentTimeMillis();
 // FIXME: Add a flag to count the total amount of events processed ? 
requestCount++;
+
 StandardWrapper wrapper = (StandardWrapper) getContainer();
+if (wrapper == null) {
+// Context has been shutdown. Nothing to do here.
+return;
+}
+
 Servlet servlet = null;
 Context context = (Context) wrapper.getParent();
 

Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1177979&r1=1177978&r2=1177979&view=diff
==
--- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Sat Oct  1 13:51:13 2011
@@ -54,6 +54,14 @@
   issue

svn commit: r1177981 - /tomcat/trunk/java/org/apache/catalina/tribes/io/XByteBuffer.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 14:06:11 2011
New Revision: 1177981

URL: http://svn.apache.org/viewvc?rev=1177981&view=rev
Log:
Remove unnecessary throws

Modified:
tomcat/trunk/java/org/apache/catalina/tribes/io/XByteBuffer.java

Modified: tomcat/trunk/java/org/apache/catalina/tribes/io/XByteBuffer.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/io/XByteBuffer.java?rev=1177981&r1=1177980&r2=1177981&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/tribes/io/XByteBuffer.java (original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/io/XByteBuffer.java Sat Oct  1 
14:06:11 2011
@@ -321,7 +321,7 @@ public class XByteBuffer
 
 }
 
-public ChannelData extractPackage(boolean clearFromBuffer) throws 
java.io.IOException {
+public ChannelData extractPackage(boolean clearFromBuffer) {
 XByteBuffer xbuf = extractDataPackage(clearFromBuffer);
 ChannelData cdata = ChannelData.getDataFromPackage(xbuf);
 return cdata;



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1177983 - /tomcat/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 14:06:21 2011
New Revision: 1177983

URL: http://svn.apache.org/viewvc?rev=1177983&view=rev
Log:
Fix consequences of removing throws

Modified:

tomcat/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java?rev=1177983&r1=1177982&r2=1177983&view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java 
(original)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java 
Sat Oct  1 14:06:21 2011
@@ -408,8 +408,6 @@ public class McastServiceImpl
 data[i] = buffer.extractPackage(true);
 }catch (IllegalStateException ise) {
 log.debug("Unable to decode message.",ise);
-}catch (IOException x) {
-log.debug("Unable to decode message.",x);
 }
 }
 Runnable t = new Runnable() {



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



DO NOT REPLY [Bug 51910] NPE in comet processing when shutting down Tomcat

2011-10-01 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51910

Mark Thomas  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED

--- Comment #2 from Mark Thomas  2011-10-01 14:13:39 UTC ---
Fixed in trunk and 7.0.x and will be included in 7.0.23 onwards.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1177997 - in /tomcat/trunk/java/org/apache/catalina/tribes/io: ObjectReader.java ReplicationStream.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 14:48:53 2011
New Revision: 1177997

URL: http://svn.apache.org/viewvc?rev=1177997&view=rev
Log:
Remove unused throws declarations

Modified:
tomcat/trunk/java/org/apache/catalina/tribes/io/ObjectReader.java
tomcat/trunk/java/org/apache/catalina/tribes/io/ReplicationStream.java

Modified: tomcat/trunk/java/org/apache/catalina/tribes/io/ObjectReader.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/io/ObjectReader.java?rev=1177997&r1=1177996&r2=1177997&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/tribes/io/ObjectReader.java (original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/io/ObjectReader.java Sat Oct  
1 14:48:53 2011
@@ -103,7 +103,7 @@ public class ObjectReader {
return pkgCnt;
}
 
- public int append(byte[] data,int off,int len, boolean count) throws 
java.io.IOException {
+ public int append(byte[] data,int off,int len, boolean count) {
 buffer.append(data,off,len);
 int pkgCnt = -1;
 if ( count ) pkgCnt = buffer.countPackages();

Modified: tomcat/trunk/java/org/apache/catalina/tribes/io/ReplicationStream.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/io/ReplicationStream.java?rev=1177997&r1=1177996&r2=1177997&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/tribes/io/ReplicationStream.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/io/ReplicationStream.java Sat 
Oct  1 14:48:53 2011
@@ -80,8 +80,7 @@ public final class ReplicationStream ext
 }
 }
 
-public Class resolveClass(String name)
-throws ClassNotFoundException, IOException {
+public Class resolveClass(String name) throws ClassNotFoundException {
 
 boolean tryRepFirst = name.startsWith("org.apache.catalina.tribes");
 try {
@@ -137,7 +136,7 @@ public final class ReplicationStream ext
 
 
 public Class findReplicationClass(String name)
-throws ClassNotFoundException, IOException {
+throws ClassNotFoundException {
 Class clazz = Class.forName(name, false, 
getClass().getClassLoader());
 return clazz;
 }



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1177998 - /tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 14:49:00 2011
New Revision: 1177998

URL: http://svn.apache.org/viewvc?rev=1177998&view=rev
Log:
Remove unused method

Modified:

tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java?rev=1177998&r1=1177997&r2=1177998&view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 (original)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 Sat Oct  1 14:49:00 2011
@@ -272,14 +272,6 @@ public class NonBlockingCoordinator exte
 }
 }
 
-public Member getNextInLine(MemberImpl local, MemberImpl[] others) {
-MemberImpl result = null;
-for ( int i=0; i

svn commit: r1177999 - /tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 14:49:07 2011
New Revision: 1177999

URL: http://svn.apache.org/viewvc?rev=1177999&view=rev
Log:
Remove unused parameter

Modified:

tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java?rev=1177999&r1=1177998&r2=1177999&view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 (original)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 Sat Oct  1 14:49:07 2011
@@ -296,7 +296,7 @@ public class NonBlockingCoordinator exte
   getOptionFlag());
 }
 
-protected Membership mergeOnArrive(CoordinationMessage msg, Member sender) 
{
+protected Membership mergeOnArrive(CoordinationMessage msg) {
 fireInterceptorEvent(new 
CoordinationEvent(CoordinationEvent.EVT_PRE_MERGE,this,"Pre merge"));
 MemberImpl local = (MemberImpl)getLocalMember(false);
 Membership merged = new Membership(local,AbsoluteOrder.comp,true);
@@ -317,7 +317,7 @@ public class NonBlockingCoordinator exte
 synchronized (electionMutex) { electionMutex.notifyAll();}
 } 
 msg.timestamp = System.currentTimeMillis();
-Membership merged = mergeOnArrive(msg, sender);
+Membership merged = mergeOnArrive(msg);
 if (isViewConf(msg)) handleViewConf(msg, sender, merged);
 else handleToken(msg, sender, merged);
 }



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1178000 - /tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 14:49:16 2011
New Revision: 1178000

URL: http://svn.apache.org/viewvc?rev=1178000&view=rev
Log:
Remove unused parameter

Modified:

tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java?rev=1178000&r1=1177999&r2=1178000&view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 (original)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 Sat Oct  1 14:49:16 2011
@@ -326,13 +326,13 @@ public class NonBlockingCoordinator exte
 MemberImpl local = (MemberImpl)getLocalMember(false);
 if ( local.equals(msg.getSource()) ) {
 //my message msg.src=local
-handleMyToken(local, msg, sender,merged);
+handleMyToken(local, msg, merged);
 } else {
 handleOtherToken(local, msg, sender,merged);
 }
 }
 
-protected void handleMyToken(MemberImpl local, CoordinationMessage msg, 
Member sender,Membership merged) throws ChannelException {
+protected void handleMyToken(MemberImpl local, CoordinationMessage msg, 
Membership merged) throws ChannelException {
 if ( local.equals(msg.getLeader()) ) {
 //no leadership change
 if ( Arrays.sameMembers(msg.getMembers(),merged.getMembers()) ) {



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1178001 - /tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 14:49:23 2011
New Revision: 1178001

URL: http://svn.apache.org/viewvc?rev=1178001&view=rev
Log:
Remove unused parameter

Modified:

tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java?rev=1178001&r1=1178000&r2=1178001&view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 (original)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 Sat Oct  1 14:49:23 2011
@@ -319,16 +319,16 @@ public class NonBlockingCoordinator exte
 msg.timestamp = System.currentTimeMillis();
 Membership merged = mergeOnArrive(msg);
 if (isViewConf(msg)) handleViewConf(msg, sender, merged);
-else handleToken(msg, sender, merged);
+else handleToken(msg, merged);
 }
 
-protected void handleToken(CoordinationMessage msg, Member 
sender,Membership merged) throws ChannelException {
+protected void handleToken(CoordinationMessage msg, Membership merged) 
throws ChannelException {
 MemberImpl local = (MemberImpl)getLocalMember(false);
 if ( local.equals(msg.getSource()) ) {
 //my message msg.src=local
 handleMyToken(local, msg, merged);
 } else {
-handleOtherToken(local, msg, sender,merged);
+handleOtherToken(local, msg, merged);
 }
 }
 
@@ -356,7 +356,7 @@ public class NonBlockingCoordinator exte
 }
 }
 
-protected void handleOtherToken(MemberImpl local, CoordinationMessage msg, 
Member sender,Membership merged) throws ChannelException {
+protected void handleOtherToken(MemberImpl local, CoordinationMessage msg, 
Membership merged) throws ChannelException {
 if ( local.equals(msg.getLeader()) ) {
 //I am the new leader
 //startElection(false);



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1178002 - /tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 14:49:33 2011
New Revision: 1178002

URL: http://svn.apache.org/viewvc?rev=1178002&view=rev
Log:
Remove unused parameter

Modified:

tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java?rev=1178002&r1=1178001&r2=1178002&view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 (original)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 Sat Oct  1 14:49:33 2011
@@ -193,7 +193,7 @@ public class NonBlockingCoordinator exte
 if ( others.length == 0 ) {
 this.viewId = new UniqueId(UUIDGenerator.randomUUID(false));
 this.view = new Membership(local,AbsoluteOrder.comp, true);
-
this.handleViewConf(this.createElectionMsg(local,others,local),local,view);
+
this.handleViewConf(this.createElectionMsg(local,others,local), view);
 return; //the only member, no need for an election
 }
 if ( suggestedviewId != null ) {
@@ -311,14 +311,14 @@ public class NonBlockingCoordinator exte
 return merged;
 }
 
-protected void processCoordMessage(CoordinationMessage msg, Member sender) 
throws ChannelException {
+protected void processCoordMessage(CoordinationMessage msg) throws 
ChannelException {
 if ( !coordMsgReceived.get() ) {
 coordMsgReceived.set(true);
 synchronized (electionMutex) { electionMutex.notifyAll();}
 } 
 msg.timestamp = System.currentTimeMillis();
 Membership merged = mergeOnArrive(msg);
-if (isViewConf(msg)) handleViewConf(msg, sender, merged);
+if (isViewConf(msg)) handleViewConf(msg, merged);
 else handleToken(msg, merged);
 }
 
@@ -338,7 +338,7 @@ public class NonBlockingCoordinator exte
 if ( Arrays.sameMembers(msg.getMembers(),merged.getMembers()) ) {
 msg.type = COORD_CONF;
 
super.sendMessage(Arrays.remove(msg.getMembers(),local),createData(msg,local),null);
-handleViewConf(msg,local,merged);
+handleViewConf(msg, merged);
 } else {
 //membership change
 suggestedView = new Membership(local,AbsoluteOrder.comp,true);
@@ -366,7 +366,7 @@ public class NonBlockingCoordinator exte
 }
 }
 
-protected void handleViewConf(CoordinationMessage msg, Member 
sender,Membership merged) throws ChannelException {
+protected void handleViewConf(CoordinationMessage msg, Membership merged) 
throws ChannelException {
 if ( viewId != null && msg.getId().equals(viewId) ) return;//we 
already have this view
 view = new 
Membership((MemberImpl)getLocalMember(false),AbsoluteOrder.comp,true);
 Arrays.fill(view,msg.getMembers());
@@ -496,7 +496,7 @@ public class NonBlockingCoordinator exte
 CoordinationMessage cmsg = new 
CoordinationMessage(msg.getMessage());
 Member[] cmbr = cmsg.getMembers();
 fireInterceptorEvent(new 
CoordinationEvent(CoordinationEvent.EVT_MSG_ARRIVE,this,"Coord Msg 
Arrived("+Arrays.toNameString(cmbr)+")"));
-processCoordMessage(cmsg, msg.getAddress());
+processCoordMessage(cmsg);
 }catch ( ChannelException x ) {
 log.error("Error processing coordination message. Could be 
fatal.",x);
 }



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1178003 - /tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 14:49:41 2011
New Revision: 1178003

URL: http://svn.apache.org/viewvc?rev=1178003&view=rev
Log:
Remove unused method

Modified:

tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java?rev=1178003&r1=1178002&r2=1178003&view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 (original)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/NonBlockingCoordinator.java
 Sat Oct  1 14:49:41 2011
@@ -282,10 +282,6 @@ public class NonBlockingCoordinator exte
 return data;
 }
 
-protected void viewChange(UniqueId viewId, Member[] view) {
-//invoke any listeners
-}
-
 protected boolean alive(Member mbr) {
 return TcpFailureDetector.memberAlive(mbr,
   COORD_ALIVE,
@@ -382,7 +378,6 @@ public class NonBlockingCoordinator exte
 suggestedviewId = null;
 }
 
-viewChange(viewId,view.getMembers());
 fireInterceptorEvent(new 
CoordinationEvent(CoordinationEvent.EVT_CONF_RX,this,"Accepted View"));
 
 if ( suggestedviewId == null && 
hasHigherPriority(merged.getMembers(),membership.getMembers()) ) {



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1178004 - /tomcat/trunk/java/org/apache/catalina/tribes/membership/McastService.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 14:49:50 2011
New Revision: 1178004

URL: http://svn.apache.org/viewvc?rev=1178004&view=rev
Log:
Removed parameter from get()

Modified:
tomcat/trunk/java/org/apache/catalina/tribes/membership/McastService.java

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/membership/McastService.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/membership/McastService.java?rev=1178004&r1=1178003&r2=1178004&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/tribes/membership/McastService.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/membership/McastService.java 
Sat Oct  1 14:49:50 2011
@@ -282,7 +282,7 @@ public class McastService implements Mem
 
properties.setProperty("localLoopbackDisabled",String.valueOf(localLoopbackDisabled));
 }
 
-public boolean getLocalLoopbackDisabled(boolean localLoopbackDisabled) {
+public boolean getLocalLoopbackDisabled() {
 String p = properties.getProperty("localLoopbackDisabled");
 if(p != null){
 return Boolean.valueOf(p).booleanValue();



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1178005 - in /tomcat/trunk/java/org/apache/catalina/tribes/transport/nio: NioSender.java ParallelNioSender.java

2011-10-01 Thread markt
Author: markt
Date: Sat Oct  1 14:49:59 2011
New Revision: 1178005

URL: http://svn.apache.org/viewvc?rev=1178005&view=rev
Log:
Remove unused parameters

Modified:
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioSender.java

tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioSender.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioSender.java?rev=1178005&r1=1178004&r2=1178005&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioSender.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/NioSender.java 
Sat Oct  1 14:49:59 2011
@@ -98,7 +98,7 @@ public class NioSender extends AbstractS
 return false;
 }//end if
 } else if ( key.isWritable() ) {
-boolean writecomplete = write(key);
+boolean writecomplete = write();
 if ( writecomplete ) {
 //we are completed, should we read an ack?
 if ( waitForAck ) {
@@ -108,7 +108,7 @@ public class NioSender extends AbstractS
 //if not, we are ready, setMessage will reregister us for 
another write interest
 //do a health check, we have no way of verify a 
disconnected
 //socket since we don't register for OP_READ on 
waitForAck=false
-read(key);//this causes overhead
+read();//this causes overhead
 setRequestCount(getRequestCount()+1);
 return true;
 }
@@ -117,7 +117,7 @@ public class NioSender extends AbstractS
 key.interestOps(key.interestOps()|SelectionKey.OP_WRITE);
 }//end if
 } else if ( key.isReadable() ) {
-boolean readcomplete = read(key);
+boolean readcomplete = read();
 if ( readcomplete ) {
 setRequestCount(getRequestCount()+1);
 return true;
@@ -160,7 +160,7 @@ public class NioSender extends AbstractS
 
 
 
-protected boolean read(SelectionKey key) throws IOException {
+protected boolean read() throws IOException {
 //if there is no message here, we are done
 if ( current == null ) return true;
 int read = isUdpBased()?dataChannel.read(readbuf) : 
socketChannel.read(readbuf);
@@ -183,7 +183,7 @@ public class NioSender extends AbstractS
 }
 
 
-protected boolean write(SelectionKey key) throws IOException {
+protected boolean write() throws IOException {
 if ( (!isConnected()) || (this.socketChannel==null && 
this.dataChannel==null)) {
 throw new IOException("NioSender is not connected, this should not 
occur.");
 }

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java?rev=1178005&r1=1178004&r2=1178005&view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java
 (original)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java
 Sat Oct  1 14:49:59 2011
@@ -309,7 +309,7 @@ public class ParallelNioSender extends A
 result = true;
 } else {
 try {
-sender.read(null);
+sender.read();
 }catch ( IOException x ) {
 sender.disconnect();
 sender.reset();



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: svn commit: r1177245 - /tomcat/trunk/java/org/apache/tomcat/util/http/MimeHeaders.java

2011-10-01 Thread Konstantin Kolinko
2011/9/29 Tim Funk :
> Wouldn't converting the whole method to use StringBuilder be more efficient
> - as compared instantiating a StringWriter AND PrintWriter? We could
> probably guess a good default size too of size()*40 which would assume most
> headers are less than 40 chars (which is typically true except for
> user-agent and cookie)
>
> But as the previous commit noted .. its a debug method so it may not really
> matter.
>
> -Tim

I like the idea. Though that will change the result a bit:
PrintWriter uses the value of "line.separator" property as the
delimiter in println().

The backport proposed to 6.0 though is about another issue: it
replaces single getHeader(name) with iteration over multiple values
using values(name).

Best regards,
Konstantin Kolinko

>
> On Thu, Sep 29, 2011 at 5:52 AM,  wrote:
>
>> Author: kkolinko
>> Date: Thu Sep 29 09:52:56 2011
>> New Revision: 1177245
>>
>> URL: http://svn.apache.org/viewvc?rev=1177245&view=rev
>> Log:
>> A bit more memory-efficient code.
>>
>> Modified:
>>    tomcat/trunk/java/org/apache/tomcat/util/http/MimeHeaders.java
>>
>> Modified: tomcat/trunk/java/org/apache/tomcat/util/http/MimeHeaders.java
>> URL:
>> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/http/MimeHeaders.java?rev=1177245&r1=1177244&r2=1177245&view=diff
>>
>> ==
>> --- tomcat/trunk/java/org/apache/tomcat/util/http/MimeHeaders.java
>> (original)
>> +++ tomcat/trunk/java/org/apache/tomcat/util/http/MimeHeaders.java Thu Sep
>> 29 09:52:56 2011
>> @@ -145,7 +145,9 @@ public class MimeHeaders {
>>             String n = e.nextElement();
>>             Enumeration ev = values(n);
>>             while (ev.hasMoreElements()) {
>> -                pw.println(n + " = " + ev.nextElement());
>> +                pw.print(n);
>> +                pw.print(" = ");
>> +                pw.println(ev.nextElement());
>>             }
>>         }
>>         return sw.toString();
>>
>>
>>
>

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org