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 2010/02/27 16:23:00 UTC

svn commit: r916965 - in /mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core: future/DefaultConnectFuture.java future/DefaultIoFuture.java polling/AbstractPollingIoConnector.java service/AbstractIoConnector.java

Author: elecharny
Date: Sat Feb 27 15:23:00 2010
New Revision: 916965

URL: http://svn.apache.org/viewvc?rev=916965&view=rev
Log:
o Some more cleanup
o Added some comments in code

Modified:
    mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/future/DefaultConnectFuture.java
    mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/future/DefaultIoFuture.java
    mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoConnector.java
    mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/service/AbstractIoConnector.java

Modified: mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/future/DefaultConnectFuture.java
URL: http://svn.apache.org/viewvc/mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/future/DefaultConnectFuture.java?rev=916965&r1=916964&r2=916965&view=diff
==============================================================================
--- mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/future/DefaultConnectFuture.java (original)
+++ mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/future/DefaultConnectFuture.java Sat Feb 27 15:23:00 2010
@@ -31,9 +31,16 @@
  * @author <a href="http://mina.apache.org">Apache MINA Project</a>
  */
 public class DefaultConnectFuture<H> extends DefaultIoFuture implements ConnectFuture<H> {
+    /** The Handle we connect to */
     private H handle;
+    
+    /** The associated connector */
     private IoConnector connector;
+    
+    /** The maximum delay for the connection establishment */
     private long deadline;
+    
+    /** The session initializer callback */
     private IoSessionInitializer<? extends ConnectFuture<H>> sessionInitializer;
 
     private static final Object CANCELED = new Object();
@@ -53,9 +60,11 @@
     public DefaultConnectFuture() {
         super(null);
     }
+    
     @Override
     public IoSession getSession() {
         Object v = getValue();
+        
         if (v instanceof RuntimeException) {
             throw (RuntimeException) v;
         } else if (v instanceof Error) {
@@ -83,6 +92,9 @@
         return getValue() instanceof IoSession;
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public boolean isCanceled() {
         return getValue() == CANCELED;
     }

Modified: mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/future/DefaultIoFuture.java
URL: http://svn.apache.org/viewvc/mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/future/DefaultIoFuture.java?rev=916965&r1=916964&r2=916965&view=diff
==============================================================================
--- mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/future/DefaultIoFuture.java (original)
+++ mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/future/DefaultIoFuture.java Sat Feb 27 15:23:00 2010
@@ -50,7 +50,7 @@
     private Object result;
     private boolean ready;
     private int waiters;
-
+    
     /**
      * Creates a new instance associated with an {@link IoSession}.
      *
@@ -175,9 +175,9 @@
 
         synchronized (lock) {
             if (ready) {
-                return ready;
+                return true;
             } else if (timeoutMillis <= 0) {
-                return ready;
+                return false;
             }
 
             waiters++;

Modified: mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoConnector.java
URL: http://svn.apache.org/viewvc/mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoConnector.java?rev=916965&r1=916964&r2=916965&view=diff
==============================================================================
--- mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoConnector.java (original)
+++ mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoConnector.java Sat Feb 27 15:23:00 2010
@@ -312,18 +312,31 @@
             IoSessionInitializer<? extends ConnectFuture> sessionInitializer) {
         H handle = null;
         boolean success = false;
+        
         try {
             handle = newHandle(localAddress);
+            
             if (connect(handle, remoteAddress)) {
+                // The connection has been established : it was a blocking handle
+                // We create the Future that will be returned to the user
                 ConnectFuture future = new DefaultConnectFuture();
+                
+                // We create the session
                 T session = newSession(processor, handle);
+                
+                // and we initialize it
                 initSession(session, future, sessionInitializer);
+                
                 // Forward the remaining process to the IoProcessor.
                 session.getProcessor().add(session);
                 success = true;
+                
                 return future;
             }
 
+            // The connect wasn't achieve immediately, but we didn't
+            // get an exception : this is ok, but we have to wait for
+            // the connecton completion.
             success = true;
         } catch (Exception e) {
             return DefaultConnectFuture.newFailedFuture(e);

Modified: mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/service/AbstractIoConnector.java
URL: http://svn.apache.org/viewvc/mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/service/AbstractIoConnector.java?rev=916965&r1=916964&r2=916965&view=diff
==============================================================================
--- mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/service/AbstractIoConnector.java (original)
+++ mina/branches/mina-2-cleanup/core/src/main/java/org/apache/mina/core/service/AbstractIoConnector.java Sat Feb 27 15:23:00 2010
@@ -201,16 +201,14 @@
             throw new IllegalArgumentException("remoteAddress is null, cannot connect");
         }
 
-        if (!getTransportMetadata().getAddressType().isAssignableFrom(
-                remoteAddress.getClass())) {
+        if (!getTransportMetadata().getAddressType().isAssignableFrom(remoteAddress.getClass())) {
             throw new IllegalArgumentException("remoteAddress type: "
                     + remoteAddress.getClass() + " (expected: "
                     + getTransportMetadata().getAddressType() + ")");
         }
 
-        if (localAddress != null
-                && !getTransportMetadata().getAddressType().isAssignableFrom(
-                        localAddress.getClass())) {
+        if ((localAddress != null)
+                && !getTransportMetadata().getAddressType().isAssignableFrom(localAddress.getClass())) {
             throw new IllegalArgumentException("localAddress type: "
                     + localAddress.getClass() + " (expected: "
                     + getTransportMetadata().getAddressType() + ")");