diff options
| author | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-14 11:53:02 +0000 |
|---|---|---|
| committer | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-14 11:53:02 +0000 |
| commit | d493b8a1d36cc7a1dd0a3541c0b2b5779efd4404 (patch) | |
| tree | b079e077f62874b5e1b42c98455301dc0d73a902 /libjava/gnu/java/nio/SelectorImpl.java | |
| parent | 4faba3def3f57302ce1c0b192c2c5790a0143c60 (diff) | |
| download | gcc-d493b8a1d36cc7a1dd0a3541c0b2b5779efd4404.tar.gz | |
2003-06-14 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/FileChannelImpl.java
(map_address): Removed incorrect comment.
* gnu/java/nio/SelectorImpl.java
(register): Remove code duplication and code for file channel handling.
* gnu/java/nio/ServerSocketChannelImpl.java
(serverSocket): Renamed from sock_object.
(ServerSocketChannel): Initialize serverSocket.
(socket): Return serverSocket.
* gnu/java/nio/SocketChannelImpl.java
(socket): Renamed from sock_object.
(isConnectionPenging): Simplified.
(socket): Return socket.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67940 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/gnu/java/nio/SelectorImpl.java')
| -rw-r--r-- | libjava/gnu/java/nio/SelectorImpl.java | 39 |
1 files changed, 10 insertions, 29 deletions
diff --git a/libjava/gnu/java/nio/SelectorImpl.java b/libjava/gnu/java/nio/SelectorImpl.java index e3eed255501..f2281a68d5a 100644 --- a/libjava/gnu/java/nio/SelectorImpl.java +++ b/libjava/gnu/java/nio/SelectorImpl.java @@ -250,50 +250,31 @@ public class SelectorImpl extends AbstractSelector protected SelectionKey register (AbstractSelectableChannel ch, int ops, Object att) { -// // filechannel is not selectable ? -// if (ch instanceof FileChannelImpl) -// { -// FileChannelImpl fc = (FileChannelImpl) ch; -// SelectionKeyImpl impl = new SelectionKeyImpl (ch, this, fc.fd); -// keys.add (impl); -// impl.interestOps (ops); -// impl.attach (att); -// return impl; -// } -// else - + SelectionKeyImpl result; + if (ch instanceof SocketChannelImpl) { SocketChannelImpl sc = (SocketChannelImpl) ch; - SelectionKeyImpl impl = new SelectionKeyImpl (ch, this, sc.fd); - add (impl); - impl.interestOps (ops); - impl.attach (att); - return impl; + result = new SelectionKeyImpl (ch, this, sc.fd); } else if (ch instanceof DatagramChannelImpl) { DatagramChannelImpl dc = (DatagramChannelImpl) ch; - SelectionKeyImpl impl = new SelectionKeyImpl (ch, this, dc.fd); - add (impl); - impl.interestOps (ops); - impl.attach (att); - return impl; + result = new SelectionKeyImpl (ch, this, dc.fd); } else if (ch instanceof ServerSocketChannelImpl) { ServerSocketChannelImpl ssc = (ServerSocketChannelImpl) ch; - SelectionKeyImpl impl = new SelectionKeyImpl (ch, this, ssc.fd); - add (impl); - impl.interestOps (ops); - impl.attach (att); - return impl; + result = new SelectionKeyImpl (ch, this, ssc.fd); } else { - System.err.println ("INTERNAL ERROR, no known channel type"); + throw new InternalError ("No known channel type"); } - return null; + add (result); + result.interestOps (ops); + result.attach (att); + return result; } } |
