Hi,

I applied the attached patch to make life a little easier for VMs that
don't use an int to represent a socket handle.

Regards,
Jeroen

2005-06-28  Jeroen Frijters  <[EMAIL PROTECTED]>

        * gnu/java/nio/DatagramChannelImpl.java
        (getNativeFD): Removed.
        * gnu/java/nio/DatagramChannelSelectionKey.java
        (getNativeFD): Modified to extract the native fd via the
        PlainDatagramSocketImpl.
        * gnu/java/nio/ServerSocketChannelImpl.java
        (getNativeFD): Removed.
        * gnu/java/nio/ServerSocketChannelSelectionKey.java
        (getNativeFD): Modified to extract the native fd via the
        PlainSocketImpl.
        * gnu/java/nio/SocketChannelImpl.java
        (getNativeFD): Removed.
        * gnu/java/nio/SocketChannelSelectionKey.java
        (getNativeFD): Modified to extract the native fd via the
        PlainSocketImpl.
Index: gnu/java/nio/DatagramChannelImpl.java
===================================================================
RCS file: /cvsroot/classpath/classpath/gnu/java/nio/DatagramChannelImpl.java,v
retrieving revision 1.12
diff -u -r1.12 DatagramChannelImpl.java
--- gnu/java/nio/DatagramChannelImpl.java       27 Feb 2004 11:19:23 -0000      
1.12
+++ gnu/java/nio/DatagramChannelImpl.java       28 Jun 2005 11:24:32 -0000
@@ -93,11 +93,6 @@
     configureBlocking(true);
   }
 
-  public int getNativeFD()
-  {
-    return socket.getPlainDatagramSocketImpl().getNativeFD();
-  }
-    
   public DatagramSocket socket ()
   {
     return socket;
Index: gnu/java/nio/DatagramChannelSelectionKey.java
===================================================================
RCS file: 
/cvsroot/classpath/classpath/gnu/java/nio/DatagramChannelSelectionKey.java,v
retrieving revision 1.1
diff -u -r1.1 DatagramChannelSelectionKey.java
--- gnu/java/nio/DatagramChannelSelectionKey.java       26 Sep 2003 21:37:54 
-0000      1.1
+++ gnu/java/nio/DatagramChannelSelectionKey.java       28 Jun 2005 11:24:32 
-0000
@@ -1,5 +1,5 @@
 /* DatagramChannelSelectionKey.java -- 
-   Copyright (C) 2003 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2005 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -54,6 +54,8 @@
 
   public int getNativeFD()
   {
-    return ((DatagramChannelImpl) ch).getNativeFD();
+    NIODatagramSocket socket =
+      (NIODatagramSocket) ((DatagramChannelImpl) ch).socket();
+    return socket.getPlainDatagramSocketImpl().getNativeFD();
   }
 }
Index: gnu/java/nio/ServerSocketChannelImpl.java
===================================================================
RCS file: 
/cvsroot/classpath/classpath/gnu/java/nio/ServerSocketChannelImpl.java,v
retrieving revision 1.12
diff -u -r1.12 ServerSocketChannelImpl.java
--- gnu/java/nio/ServerSocketChannelImpl.java   13 Oct 2004 14:32:33 -0000      
1.12
+++ gnu/java/nio/ServerSocketChannelImpl.java   28 Jun 2005 11:24:32 -0000
@@ -60,11 +60,6 @@
     configureBlocking(true);
   }
 
-  public int getNativeFD()
-  {
-    return serverSocket.getPlainSocketImpl().getNativeFD();
-  }
-  
   public void finalizer()
   {
     if (connected)
Index: gnu/java/nio/ServerSocketChannelSelectionKey.java
===================================================================
RCS file: 
/cvsroot/classpath/classpath/gnu/java/nio/ServerSocketChannelSelectionKey.java,v
retrieving revision 1.1
diff -u -r1.1 ServerSocketChannelSelectionKey.java
--- gnu/java/nio/ServerSocketChannelSelectionKey.java   15 Oct 2003 12:51:32 
-0000      1.1
+++ gnu/java/nio/ServerSocketChannelSelectionKey.java   28 Jun 2005 11:24:32 
-0000
@@ -51,6 +51,8 @@
 
   public int getNativeFD()
   {
-    return ((ServerSocketChannelImpl) ch).getNativeFD();
+    NIOServerSocket socket =
+         (NIOServerSocket) ((ServerSocketChannelImpl) ch).socket();
+    return socket.getPlainSocketImpl().getNativeFD();
   }
 }
Index: gnu/java/nio/SocketChannelImpl.java
===================================================================
RCS file: /cvsroot/classpath/classpath/gnu/java/nio/SocketChannelImpl.java,v
retrieving revision 1.25
diff -u -r1.25 SocketChannelImpl.java
--- gnu/java/nio/SocketChannelImpl.java 22 Nov 2004 20:38:45 -0000      1.25
+++ gnu/java/nio/SocketChannelImpl.java 28 Jun 2005 11:24:33 -0000
@@ -103,11 +103,6 @@
     return impl;
   }
 
-  int getNativeFD()
-  {
-    return socket.getPlainSocketImpl().getNativeFD();
-  }
-
   protected void implCloseSelectableChannel () throws IOException
   {
     socket.close();
Index: gnu/java/nio/SocketChannelSelectionKey.java
===================================================================
RCS file: 
/cvsroot/classpath/classpath/gnu/java/nio/SocketChannelSelectionKey.java,v
retrieving revision 1.1
diff -u -r1.1 SocketChannelSelectionKey.java
--- gnu/java/nio/SocketChannelSelectionKey.java 26 Sep 2003 21:37:54 -0000      
1.1
+++ gnu/java/nio/SocketChannelSelectionKey.java 28 Jun 2005 11:24:33 -0000
@@ -51,6 +51,8 @@
     
   public int getNativeFD()
   {
-    return ((SocketChannelImpl) ch).getNativeFD();
+    NIOSocket socket =
+        (NIOSocket) ((SocketChannelImpl) ch).socket();
+    return socket.getPlainSocketImpl().getNativeFD();
   }
 }
_______________________________________________
Classpath-patches mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/classpath-patches

Reply via email to