You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by tr...@apache.org on 2005/10/28 16:29:25 UTC
svn commit: r329211 - in /directory/network:
branches/0.8/src/java/org/apache/mina/io/socket/SocketIoProcessor.java
trunk/src/java/org/apache/mina/transport/socket/nio/support/SocketIoProcessor.java
Author: trustin
Date: Fri Oct 28 07:29:09 2005
New Revision: 329211
URL: http://svn.apache.org/viewcvs?rev=329211&view=rev
Log:
Resolved issue: DIRMINA-110 - Exceptions thrown while writing data are not reported.
* Removed try-finally block in flush(SocketSession) to fix the problem
Modified:
directory/network/branches/0.8/src/java/org/apache/mina/io/socket/SocketIoProcessor.java
directory/network/trunk/src/java/org/apache/mina/transport/socket/nio/support/SocketIoProcessor.java
Modified: directory/network/branches/0.8/src/java/org/apache/mina/io/socket/SocketIoProcessor.java
URL: http://svn.apache.org/viewcvs/directory/network/branches/0.8/src/java/org/apache/mina/io/socket/SocketIoProcessor.java?rev=329211&r1=329210&r2=329211&view=diff
==============================================================================
--- directory/network/branches/0.8/src/java/org/apache/mina/io/socket/SocketIoProcessor.java (original)
+++ directory/network/branches/0.8/src/java/org/apache/mina/io/socket/SocketIoProcessor.java Fri Oct 28 07:29:09 2005
@@ -502,34 +502,24 @@
continue;
}
- int writtenBytes = 0;
- try
+ int writtenBytes = ch.write( buf.buf() );
+ if( writtenBytes > 0 )
{
- writtenBytes = ch.write( buf.buf() );
+ session.increaseWrittenBytes( writtenBytes );
+ session.resetIdleCount( IdleStatus.BOTH_IDLE );
+ session.resetIdleCount( IdleStatus.WRITER_IDLE );
}
- finally
- {
- if( writtenBytes > 0 )
- {
- session.increaseWrittenBytes( writtenBytes );
- session.resetIdleCount( IdleStatus.BOTH_IDLE );
- session.resetIdleCount( IdleStatus.WRITER_IDLE );
- }
- SelectionKey key = session.getSelectionKey();
- if( buf.hasRemaining() )
- {
- // Kernel buffer is full
- key
- .interestOps( key.interestOps()
- | SelectionKey.OP_WRITE );
- break;
- }
- else
- {
- key.interestOps( key.interestOps()
- & ( ~SelectionKey.OP_WRITE ) );
- }
+ SelectionKey key = session.getSelectionKey();
+ if( buf.hasRemaining() )
+ {
+ // Kernel buffer is full
+ key.interestOps( key.interestOps() | SelectionKey.OP_WRITE );
+ break;
+ }
+ else
+ {
+ key.interestOps( key.interestOps() & ( ~SelectionKey.OP_WRITE ) );
}
}
}
Modified: directory/network/trunk/src/java/org/apache/mina/transport/socket/nio/support/SocketIoProcessor.java
URL: http://svn.apache.org/viewcvs/directory/network/trunk/src/java/org/apache/mina/transport/socket/nio/support/SocketIoProcessor.java?rev=329211&r1=329210&r2=329211&view=diff
==============================================================================
--- directory/network/trunk/src/java/org/apache/mina/transport/socket/nio/support/SocketIoProcessor.java (original)
+++ directory/network/trunk/src/java/org/apache/mina/transport/socket/nio/support/SocketIoProcessor.java Fri Oct 28 07:29:09 2005
@@ -493,32 +493,22 @@
continue;
}
- int writtenBytes = 0;
- try
+ int writtenBytes = ch.write( buf.buf() );
+ if( writtenBytes > 0 )
{
- writtenBytes = ch.write( buf.buf() );
+ session.increaseWrittenBytes( writtenBytes );
}
- finally
- {
- if( writtenBytes > 0 )
- {
- session.increaseWrittenBytes( writtenBytes );
- }
- SelectionKey key = session.getSelectionKey();
- if( buf.hasRemaining() )
- {
- // Kernel buffer is full
- key
- .interestOps( key.interestOps()
- | SelectionKey.OP_WRITE );
- break;
- }
- else
- {
- key.interestOps( key.interestOps()
- & ( ~SelectionKey.OP_WRITE ) );
- }
+ SelectionKey key = session.getSelectionKey();
+ if( buf.hasRemaining() )
+ {
+ // Kernel buffer is full
+ key.interestOps( key.interestOps() | SelectionKey.OP_WRITE );
+ break;
+ }
+ else
+ {
+ key.interestOps( key.interestOps() & ( ~SelectionKey.OP_WRITE ) );
}
}
}