2004-02-26 Michael Koch <konqueror@gmx.de>
authorMichael Koch <konqueror@gmx.de>
Thu, 26 Feb 2004 19:45:51 +0000 (19:45 +0000)
committerMichael Koch <mkoch@gcc.gnu.org>
Thu, 26 Feb 2004 19:45:51 +0000 (19:45 +0000)
* gnu/java/nio/FileLockImpl.java
(finalize): Made protected.
* java/nio/channels/FileChannel.java
(MapMode.READ_ONLY): Made final.
(MapMode.READ_WRITE): Made final.
(MapMode.PRIVATE): Made final.
* java/nio/channels/SocketChannel.java
(open): Simplified code.
* java/nio/channels/spi/AbstractSelectableChannel.java
(registered): Unused, removed.
(keyFor): Check channel is open, only locate key
and not add a new one.
(register): Don't delete attachments.

From-SVN: r78519

libjava/ChangeLog
libjava/gnu/java/nio/FileLockImpl.java
libjava/java/nio/channels/FileChannel.java
libjava/java/nio/channels/SocketChannel.java
libjava/java/nio/channels/spi/AbstractSelectableChannel.java

index 5984f37..7be2aeb 100644 (file)
@@ -1,5 +1,21 @@
 2004-02-26  Michael Koch  <konqueror@gmx.de>
 
+       * gnu/java/nio/FileLockImpl.java
+       (finalize): Made protected.
+       * java/nio/channels/FileChannel.java
+       (MapMode.READ_ONLY): Made final.
+       (MapMode.READ_WRITE): Made final.
+       (MapMode.PRIVATE): Made final.
+       * java/nio/channels/SocketChannel.java
+       (open): Simplified code.
+       * java/nio/channels/spi/AbstractSelectableChannel.java
+       (registered): Unused, removed.
+       (keyFor): Check channel is open, only locate key
+       and not add a new one.
+       (register): Don't delete attachments.
+
+2004-02-26  Michael Koch  <konqueror@gmx.de>
+
        * gnu/java/awt/ComponentDataBlitOp.java
        (INSTANCE): Made final.
        * gnu/java/awt/image/ImageDecoder.java:
index 9384bf6..eff3320 100644 (file)
@@ -68,7 +68,7 @@ public class FileLockImpl extends FileLock
     this.fd = fd;
   }
 
-  public void finalize()
+  protected void finalize()
   {
     try
       {
index 9def463..6604e99 100644 (file)
@@ -53,9 +53,9 @@ public abstract class FileChannel extends AbstractInterruptibleChannel
   {
     int m;
 
-    public static MapMode READ_ONLY  = new MapMode(0);
-    public static MapMode READ_WRITE = new MapMode(1);
-    public static MapMode PRIVATE    = new MapMode(2);
+    public static final MapMode READ_ONLY  = new MapMode(0);
+    public static final MapMode READ_WRITE = new MapMode(1);
+    public static final MapMode PRIVATE    = new MapMode(2);
 
     /**
      * Initializes the MapMode.
index c22eb1d..9363300 100644 (file)
@@ -87,11 +87,7 @@ abstract public class SocketChannel extends AbstractSelectableChannel
   public static SocketChannel open (SocketAddress remote) throws IOException
   {
     SocketChannel ch = open ();
-       
-    if (ch.connect (remote))
-      {
-      }
-    
+    ch.connect(remote);
     return ch;
   }
     
index 76c6c2b..0a872bc 100644 (file)
@@ -48,7 +48,6 @@ import java.util.ListIterator;
 
 public abstract class AbstractSelectableChannel extends SelectableChannel
 {
-  private int registered;
   private boolean blocking = true;
   private Object LOCK = new Object();
   private SelectorProvider provider;
@@ -135,9 +134,15 @@ public abstract class AbstractSelectableChannel extends SelectableChannel
    */
   public final SelectionKey keyFor(Selector selector)
   {
+    if (! isOpen())
+      return null;
+    
     try
       {
-        return register (selector, 0, null);
+        synchronized(blockingLock())
+         {
+           return locate (selector);
+         }
       }
     catch (Exception e)
       {
@@ -196,7 +201,8 @@ public abstract class AbstractSelectableChannel extends SelectableChannel
 
         if (key != null)
           {
-            key.attach (att);
+           if (att != null)
+             key.attach (att);
           }
         else
           {