You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by el...@apache.org on 2008/10/20 15:40:21 UTC

svn commit: r706280 - in /mina/trunk: core/src/main/java/org/apache/mina/core/polling/ core/src/main/java/org/apache/mina/transport/socket/nio/ transport-apr/src/main/java/org/apache/mina/transport/socket/apr/

Author: elecharny
Date: Mon Oct 20 06:40:20 2008
New Revision: 706280

URL: http://svn.apache.org/viewvc?rev=706280&view=rev
Log:
o Added sime javadoc
o Renamed the processSessions method to processConnection, as it's really what it does.
o Renamed the connectionRequest() method to getConnectionRequest() for clarity sake
o Removed useless Assert. 
o Fixed the getSlice(int, int) method

Modified:
    mina/trunk/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoConnector.java
    mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/NioDatagramConnector.java
    mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/NioSocketConnector.java
    mina/trunk/transport-apr/src/main/java/org/apache/mina/transport/socket/apr/AprSocketConnector.java

Modified: mina/trunk/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoConnector.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoConnector.java?rev=706280&r1=706279&r2=706280&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoConnector.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoConnector.java Mon Oct 20 06:40:20 2008
@@ -294,7 +294,7 @@
      * @param handle the socket client handle 
      * @return the connection request if the socket is connecting otherwise <code>null</code>
      */
-    protected abstract ConnectionRequest connectionRequest(H handle);
+    protected abstract ConnectionRequest getConnectionRequest(H handle);
 
     /**
      * {@inheritDoc}
@@ -409,29 +409,35 @@
         return nHandles;
     }
 
-    @SuppressWarnings("unchecked")
-    private int processSessions(Iterator<H> handlers) {
+    /**
+     * Process the incoming connections, creating a new session for each
+     * valid connection. 
+     */
+    private int processConnections(Iterator<H> handlers) {
         int nHandles = 0;
+        
+        // Loop on each connection request
         while (handlers.hasNext()) {
             H handle = handlers.next();
             handlers.remove();
 
-            ConnectionRequest entry = connectionRequest(handle);
+            ConnectionRequest connectionRequest = getConnectionRequest(handle);
             boolean success = false;
             try {
                 if (finishConnect(handle)) {
                     T session = newSession(processor, handle);
-                    finishSessionInitialization(session, entry, entry.getSessionInitializer());
+                    finishSessionInitialization(session, connectionRequest, connectionRequest.getSessionInitializer());
                     // Forward the remaining process to the IoProcessor.
                     session.getProcessor().add(session);
                     nHandles ++;
                 }
                 success = true;
             } catch (Throwable e) {
-                entry.setException(e);
+                connectionRequest.setException(e);
             } finally {
                 if (!success) {
-                    cancelQueue.offer(entry);
+                    // The connection failed, we have to cancel it.
+                    cancelQueue.offer(connectionRequest);
                 }
             }
         }
@@ -443,12 +449,12 @@
 
         while (handles.hasNext()) {
             H handle = handles.next();
-            ConnectionRequest entry = connectionRequest(handle);
+            ConnectionRequest connectionRequest = getConnectionRequest(handle);
 
-            if (currentTime >= entry.deadline) {
-                entry.setException(
+            if (currentTime >= connectionRequest.deadline) {
+                connectionRequest.setException(
                         new ConnectException("Connection timed out."));
-                cancelQueue.offer(entry);
+                cancelQueue.offer(connectionRequest);
             }
         }
     }
@@ -467,7 +473,7 @@
                     nHandles += registerNew();
 
                     if (selected > 0) {
-                        nHandles -= processSessions(selectedHandles());
+                        nHandles -= processConnections(selectedHandles());
                     }
 
                     processTimedOutSessions(allHandles());

Modified: mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/NioDatagramConnector.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/NioDatagramConnector.java?rev=706280&r1=706279&r2=706280&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/NioDatagramConnector.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/NioDatagramConnector.java Mon Oct 20 06:40:20 2008
@@ -158,7 +158,7 @@
     }
 
     @Override
-    protected ConnectionRequest connectionRequest(DatagramChannel handle) {
+    protected ConnectionRequest getConnectionRequest(DatagramChannel handle) {
         throw new UnsupportedOperationException();
     }
 

Modified: mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/NioSocketConnector.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/NioSocketConnector.java?rev=706280&r1=706279&r2=706280&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/NioSocketConnector.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/NioSocketConnector.java Mon Oct 20 06:40:20 2008
@@ -192,7 +192,7 @@
      * {@inheritDoc}
      */
     @Override
-    protected ConnectionRequest connectionRequest(SocketChannel handle) {
+    protected ConnectionRequest getConnectionRequest(SocketChannel handle) {
         SelectionKey key = handle.keyFor(selector);
         if (key == null) {
             return null;

Modified: mina/trunk/transport-apr/src/main/java/org/apache/mina/transport/socket/apr/AprSocketConnector.java
URL: http://svn.apache.org/viewvc/mina/trunk/transport-apr/src/main/java/org/apache/mina/transport/socket/apr/AprSocketConnector.java?rev=706280&r1=706279&r2=706280&view=diff
==============================================================================
--- mina/trunk/transport-apr/src/main/java/org/apache/mina/transport/socket/apr/AprSocketConnector.java (original)
+++ mina/trunk/transport-apr/src/main/java/org/apache/mina/transport/socket/apr/AprSocketConnector.java Mon Oct 20 06:40:20 2008
@@ -201,7 +201,7 @@
      * {@inheritDoc}
      */
     @Override
-    protected ConnectionRequest connectionRequest(Long handle) {
+    protected ConnectionRequest getConnectionRequest(Long handle) {
         return requests.get(handle);
     }