diff options
author | Michael Koch <konqueror@gmx.de> | 2003-01-11 01:17:19 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2003-01-11 01:17:19 +0000 |
commit | 927818a5984c6fe521cd8e6c9a11c7f3599a87a5 (patch) | |
tree | 52d5c61480de7bafcb2350a66e100dff889e5727 /libjava/java/net/ServerSocket.java | |
parent | b1771c6ac2f7917c10a8c47c61201f88e63eb2bb (diff) | |
download | gcc-927818a5984c6fe521cd8e6c9a11c7f3599a87a5.zip gcc-927818a5984c6fe521cd8e6c9a11c7f3599a87a5.tar.gz gcc-927818a5984c6fe521cd8e6c9a11c7f3599a87a5.tar.bz2 |
2003-01-10 Michael Koch <konqueror@gmx.de>
* java/net/DatagramSocket.java
(ch): Description added.
(remotePort): Initialize with -1.
(connect): Doesnt throws SocketException.
* java/net/MulticastSocket.java
(setInterface): Merge with Classpath.
* java/net/ServerSocket.java
(closed): New member variable.
(bind): Check if socket is closed.
(close): Close an associated channel too, set new value to closed.
(isBound): Reindented.
(isClosed): Implemented.
* java/net/Socket.java
(closed): New member variable.
(bind): Check if socket is closed.
(connect): Check if socket is closed.
(close): Close an associated channel too, set new value to closed.
(isClosed): Implemented.
From-SVN: r61185
Diffstat (limited to 'libjava/java/net/ServerSocket.java')
-rw-r--r-- | libjava/java/net/ServerSocket.java | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/libjava/java/net/ServerSocket.java b/libjava/java/net/ServerSocket.java index 62917b6..e2f8e63 100644 --- a/libjava/java/net/ServerSocket.java +++ b/libjava/java/net/ServerSocket.java @@ -77,6 +77,8 @@ public class ServerSocket */ private ServerSocketChannel ch; + private boolean closed = false; + /** * Constructor that simply sets the implementation. * @@ -200,6 +202,9 @@ public class ServerSocket */ public void bind (SocketAddress endpoint, int backlog) throws IOException { + if (closed) + throw new SocketException ("ServerSocket is closed"); + if (impl == null) throw new IOException ("Cannot initialize Socket implementation"); @@ -315,7 +320,13 @@ public class ServerSocket */ public void close () throws IOException { - impl.close(); + if (impl != null) + impl.close (); + + if (ch != null) + ch.close (); + + closed = true; } /** @@ -358,8 +369,7 @@ public class ServerSocket */ public boolean isClosed() { - // FIXME: implement this - return false; + return closed; } /** |