diff options
author | Michael Koch <konqueror@gmx.de> | 2003-09-25 21:14:43 +0000 |
---|---|---|
committer | Michael Koch <mkoch@gcc.gnu.org> | 2003-09-25 21:14:43 +0000 |
commit | 1bfb64ff9a95faf36b928d9243a4a6c34005dd31 (patch) | |
tree | 17b727bada732a4e8ec9d8c21dcfa11399a0d8ea /libjava | |
parent | 73a1415eb4165742522002a28850037448b9f477 (diff) | |
download | gcc-1bfb64ff9a95faf36b928d9243a4a6c34005dd31.zip gcc-1bfb64ff9a95faf36b928d9243a4a6c34005dd31.tar.gz gcc-1bfb64ff9a95faf36b928d9243a4a6c34005dd31.tar.bz2 |
2003-09-25 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/DatagramChannelImpl.java
(getNativeFD): New method.
* gnu/java/nio/SelectionKeyImpl.java
(SelectionKeyImpl): Class made abstract.
(fd): Removed.
(SelectionKeyImpl): Remove fd argument.
(getNativeFD): New method.
* gnu/java/nio/SocketChannelImpl.java
(getNativeFD): New method.
gnu/java/nio/DatagramChannelSelectionKey.java,
* gnu/java/nio/SocketChannelSelectionKey.java:
New files.
* Makefile.am (ordinary_java_source_files):
Added new files gnu/java/nio/DatagramChannelSelectionKey.java and
gnu/java/nio/SocketChannelSelectionKey.java.
* Makefile.in: Regenerated.
From-SVN: r71797
Diffstat (limited to 'libjava')
-rw-r--r-- | libjava/ChangeLog | 19 | ||||
-rw-r--r-- | libjava/Makefile.am | 2 | ||||
-rw-r--r-- | libjava/Makefile.in | 4 | ||||
-rw-r--r-- | libjava/gnu/java/nio/DatagramChannelImpl.java | 5 | ||||
-rw-r--r-- | libjava/gnu/java/nio/DatagramChannelSelectionKey.java | 59 | ||||
-rw-r--r-- | libjava/gnu/java/nio/SelectionKeyImpl.java | 8 | ||||
-rw-r--r-- | libjava/gnu/java/nio/SocketChannelImpl.java | 5 | ||||
-rw-r--r-- | libjava/gnu/java/nio/SocketChannelSelectionKey.java | 56 |
8 files changed, 154 insertions, 4 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 151c76f..70cc0c5 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,5 +1,24 @@ 2003-09-25 Michael Koch <konqueror@gmx.de> + * gnu/java/nio/DatagramChannelImpl.java + (getNativeFD): New method. + * gnu/java/nio/SelectionKeyImpl.java + (SelectionKeyImpl): Class made abstract. + (fd): Removed. + (SelectionKeyImpl): Remove fd argument. + (getNativeFD): New method. + * gnu/java/nio/SocketChannelImpl.java + (getNativeFD): New method. + gnu/java/nio/DatagramChannelSelectionKey.java, + * gnu/java/nio/SocketChannelSelectionKey.java: + New files. + * Makefile.am (ordinary_java_source_files): + Added new files gnu/java/nio/DatagramChannelSelectionKey.java and + gnu/java/nio/SocketChannelSelectionKey.java. + * Makefile.in: Regenerated. + +2003-09-25 Michael Koch <konqueror@gmx.de> + * java/lang/reflect/Proxy.java (getProxyClass): Remove workaround for gcj 3.0.x. diff --git a/libjava/Makefile.am b/libjava/Makefile.am index 889d092..2ba65bf 100644 --- a/libjava/Makefile.am +++ b/libjava/Makefile.am @@ -2183,6 +2183,7 @@ gnu/java/math/MPN.java \ gnu/java/net/PlainDatagramSocketImpl.java \ gnu/java/net/PlainSocketImpl.java \ gnu/java/nio/DatagramChannelImpl.java \ +gnu/java/nio/DatagramChannelSelectionKey.java \ gnu/java/nio/FileLockImpl.java \ gnu/java/nio/NIOConstants.java \ gnu/java/nio/NIODatagramSocket.java \ @@ -2193,6 +2194,7 @@ gnu/java/nio/SelectorImpl.java \ gnu/java/nio/SelectorProviderImpl.java \ gnu/java/nio/ServerSocketChannelImpl.java \ gnu/java/nio/SocketChannelImpl.java \ +gnu/java/nio/SocketChannelSelectionKey.java \ gnu/java/nio/charset/ISO_8859_1.java \ gnu/java/nio/charset/Provider.java \ gnu/java/nio/charset/US_ASCII.java \ diff --git a/libjava/Makefile.in b/libjava/Makefile.in index 87b0657..e744c0d 100644 --- a/libjava/Makefile.in +++ b/libjava/Makefile.in @@ -1901,6 +1901,7 @@ gnu/java/math/MPN.java \ gnu/java/net/PlainDatagramSocketImpl.java \ gnu/java/net/PlainSocketImpl.java \ gnu/java/nio/DatagramChannelImpl.java \ +gnu/java/nio/DatagramChannelSelectionKey.java \ gnu/java/nio/FileLockImpl.java \ gnu/java/nio/NIOConstants.java \ gnu/java/nio/NIODatagramSocket.java \ @@ -1911,6 +1912,7 @@ gnu/java/nio/SelectorImpl.java \ gnu/java/nio/SelectorProviderImpl.java \ gnu/java/nio/ServerSocketChannelImpl.java \ gnu/java/nio/SocketChannelImpl.java \ +gnu/java/nio/SocketChannelSelectionKey.java \ gnu/java/nio/charset/ISO_8859_1.java \ gnu/java/nio/charset/Provider.java \ gnu/java/nio/charset/US_ASCII.java \ @@ -3026,6 +3028,7 @@ DEP_FILES = .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \ .deps/gnu/java/net/natPlainDatagramSocketImpl.P \ .deps/gnu/java/net/natPlainSocketImpl.P \ .deps/gnu/java/nio/DatagramChannelImpl.P \ +.deps/gnu/java/nio/DatagramChannelSelectionKey.P \ .deps/gnu/java/nio/FileLockImpl.P .deps/gnu/java/nio/NIOConstants.P \ .deps/gnu/java/nio/NIODatagramSocket.P .deps/gnu/java/nio/NIOSocket.P \ .deps/gnu/java/nio/PipeImpl.P .deps/gnu/java/nio/SelectionKeyImpl.P \ @@ -3033,6 +3036,7 @@ DEP_FILES = .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \ .deps/gnu/java/nio/SelectorProviderImpl.P \ .deps/gnu/java/nio/ServerSocketChannelImpl.P \ .deps/gnu/java/nio/SocketChannelImpl.P \ +.deps/gnu/java/nio/SocketChannelSelectionKey.P \ .deps/gnu/java/nio/charset/ISO_8859_1.P \ .deps/gnu/java/nio/charset/Provider.P \ .deps/gnu/java/nio/charset/US_ASCII.P \ diff --git a/libjava/gnu/java/nio/DatagramChannelImpl.java b/libjava/gnu/java/nio/DatagramChannelImpl.java index a4f46df..b2dcd32 100644 --- a/libjava/gnu/java/nio/DatagramChannelImpl.java +++ b/libjava/gnu/java/nio/DatagramChannelImpl.java @@ -64,6 +64,11 @@ public final class DatagramChannelImpl extends DatagramChannel super (provider); socket = new NIODatagramSocket (new PlainDatagramSocketImpl(), this); } + + public int getNativeFD() + { + return socket.getImpl().getNativeFD(); + } public DatagramSocket socket () { diff --git a/libjava/gnu/java/nio/DatagramChannelSelectionKey.java b/libjava/gnu/java/nio/DatagramChannelSelectionKey.java new file mode 100644 index 0000000..33f8123 --- /dev/null +++ b/libjava/gnu/java/nio/DatagramChannelSelectionKey.java @@ -0,0 +1,59 @@ +/* DatagramChannelSelectionKey.java -- + Copyright (C) 2003 Free Software Foundation, Inc. + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.java.nio; + +import java.nio.channels.spi.AbstractSelectableChannel; + +/** + * @author Michael Koch + */ +public final class DatagramChannelSelectionKey + extends SelectionKeyImpl +{ + public DatagramChannelSelectionKey (AbstractSelectableChannel channel, + SelectorImpl selector) + { + super (channel, selector); + } + + public int getNativeFD() + { + return ((DatagramChannelImpl) ch).getNativeFD(); + } +} diff --git a/libjava/gnu/java/nio/SelectionKeyImpl.java b/libjava/gnu/java/nio/SelectionKeyImpl.java index df4faa3..0f704c9 100644 --- a/libjava/gnu/java/nio/SelectionKeyImpl.java +++ b/libjava/gnu/java/nio/SelectionKeyImpl.java @@ -43,19 +43,17 @@ import java.nio.channels.SelectionKey; import java.nio.channels.Selector; import java.nio.channels.spi.AbstractSelectionKey; -public class SelectionKeyImpl extends AbstractSelectionKey +public abstract class SelectionKeyImpl extends AbstractSelectionKey { - int fd; private int readyOps; private int interestOps; private SelectorImpl impl; private SelectableChannel ch; - public SelectionKeyImpl (SelectableChannel ch, SelectorImpl impl, int fd) + public SelectionKeyImpl (SelectableChannel ch, SelectorImpl impl) { this.ch = ch; this.impl = impl; - this.fd = fd; } public SelectableChannel channel () @@ -101,4 +99,6 @@ public class SelectionKeyImpl extends AbstractSelectionKey { return impl; } + + public abstract int getNativeFD(); } diff --git a/libjava/gnu/java/nio/SocketChannelImpl.java b/libjava/gnu/java/nio/SocketChannelImpl.java index a114b06..589296f5 100644 --- a/libjava/gnu/java/nio/SocketChannelImpl.java +++ b/libjava/gnu/java/nio/SocketChannelImpl.java @@ -98,6 +98,11 @@ public final class SocketChannelImpl extends SocketChannel } } + int getNativeFD() + { + return socket.getImpl().getNativeFD(); + } + protected void implCloseSelectableChannel () throws IOException { connected = false; diff --git a/libjava/gnu/java/nio/SocketChannelSelectionKey.java b/libjava/gnu/java/nio/SocketChannelSelectionKey.java new file mode 100644 index 0000000..dcbc7bd --- /dev/null +++ b/libjava/gnu/java/nio/SocketChannelSelectionKey.java @@ -0,0 +1,56 @@ +/* SocketChannelSelectionKey.java -- + Copyright (C) 2003 Free Software Foundation, Inc. + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + + +package gnu.java.nio; + +import java.nio.channels.spi.AbstractSelectableChannel; + +public final class SocketChannelSelectionKey + extends SelectionKeyImpl +{ + public SocketChannelSelectionKey (AbstractSelectableChannel channel, + SelectorImpl selector) + { + super (channel, selector); + } + + public int getNativeFD() + { + return ((SocketChannelImpl) ch).getNativeFD(); + } +} |