Author: remm
Date: Sun Apr 27 11:25:39 2014
New Revision: 1590378
URL: http://svn.apache.org/r1590378
Log:
Since I looked at the traces, replace exception wrap with unwrap for
IOException.
Modified:
tomcat/trunk/java/org/apache/coyote/http11/InternalNio2InputBuffer.java
tomcat/trunk/java/org/apache/coyote/http11/InternalNio2OutputBuffer.java
tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletInputStream.java
tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletOutputStream.java
Modified:
tomcat/trunk/java/org/apache/coyote/http11/InternalNio2InputBuffer.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/InternalNio2InputBuffer.java?rev=1590378&r1=1590377&r2=1590378&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/InternalNio2InputBuffer.java
(original)
+++ tomcat/trunk/java/org/apache/coyote/http11/InternalNio2InputBuffer.java Sun
Apr 27 11:25:39 2014
@@ -219,7 +219,13 @@ public class InternalNio2InputBuffer ext
try {
nRead = socket.getSocket().read(byteBuffer)
.get(socket.getTimeout(),
TimeUnit.MILLISECONDS).intValue();
- } catch (InterruptedException | ExecutionException e) {
+ } catch (ExecutionException e) {
+ if (e.getCause() != null && e.getCause() instanceof
IOException) {
+ throw (IOException) e.getCause();
+ } else {
+ throw new IOException(e);
+ }
+ } catch (InterruptedException e) {
throw new IOException(e);
} catch (TimeoutException e) {
throw new SocketTimeoutException();
Modified:
tomcat/trunk/java/org/apache/coyote/http11/InternalNio2OutputBuffer.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/InternalNio2OutputBuffer.java?rev=1590378&r1=1590377&r2=1590378&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/InternalNio2OutputBuffer.java
(original)
+++ tomcat/trunk/java/org/apache/coyote/http11/InternalNio2OutputBuffer.java
Sun Apr 27 11:25:39 2014
@@ -399,7 +399,13 @@ public class InternalNio2OutputBuffer ex
throw new
EOFException(sm.getString("iob.failedwrite"));
}
}
- } catch (InterruptedException | ExecutionException e) {
+ } catch (ExecutionException e) {
+ if (e.getCause() != null && e.getCause() instanceof
IOException) {
+ throw (IOException) e.getCause();
+ } else {
+ throw new IOException(e);
+ }
+ } catch (InterruptedException e) {
throw new IOException(e);
} catch (TimeoutException e) {
throw new SocketTimeoutException();
Modified:
tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletInputStream.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletInputStream.java?rev=1590378&r1=1590377&r2=1590378&view=diff
==============================================================================
---
tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletInputStream.java
(original)
+++
tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletInputStream.java
Sun Apr 27 11:25:39 2014
@@ -206,7 +206,15 @@ public class Nio2ServletInputStream exte
nRead = channel.read(readBuffer)
.get(wrapper.getTimeout(),
TimeUnit.MILLISECONDS).intValue();
readPending = false;
- } catch (InterruptedException | ExecutionException e) {
+ } catch (ExecutionException e) {
+ if (e.getCause() != null && e.getCause() instanceof
IOException) {
+ onError(e.getCause());
+ throw (IOException) e.getCause();
+ } else {
+ onError(e);
+ throw new IOException(e);
+ }
+ } catch (InterruptedException e) {
onError(e);
throw new IOException(e);
} catch (TimeoutException e) {
Modified:
tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletOutputStream.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletOutputStream.java?rev=1590378&r1=1590377&r2=1590378&view=diff
==============================================================================
---
tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletOutputStream.java
(original)
+++
tomcat/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletOutputStream.java
Sun Apr 27 11:25:39 2014
@@ -129,7 +129,15 @@ public class Nio2ServletOutputStream ext
buffer.flip();
try {
written =
channel.write(buffer).get(socketWrapper.getTimeout(),
TimeUnit.MILLISECONDS).intValue();
- } catch (InterruptedException | ExecutionException e) {
+ } catch (ExecutionException e) {
+ if (e.getCause() != null && e.getCause() instanceof
IOException) {
+ onError(e.getCause());
+ throw (IOException) e.getCause();
+ } else {
+ onError(e);
+ throw new IOException(e);
+ }
+ } catch (InterruptedException e) {
onError(e);
throw new IOException(e);
} catch (TimeoutException e) {
@@ -161,7 +169,15 @@ public class Nio2ServletOutputStream ext
} else {
throw new TimeoutException();
}
- } catch (InterruptedException | ExecutionException e) {
+ } catch (ExecutionException e) {
+ if (e.getCause() != null && e.getCause() instanceof IOException) {
+ onError(e.getCause());
+ throw (IOException) e.getCause();
+ } else {
+ onError(e);
+ throw new IOException(e);
+ }
+ } catch (InterruptedException e) {
onError(e);
throw new IOException(e);
} catch (TimeoutException e) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]