summaryrefslogtreecommitdiffstats
path: root/libjava/java/nio/channels/spi/AbstractSelector.java
diff options
context:
space:
mode:
authormkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4>2002-11-13 13:52:47 +0000
committermkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4>2002-11-13 13:52:47 +0000
commit64540d8d5fd3d97c7cf8e6a2444da1051621db1d (patch)
tree9b377b960cff154ae1145cebd66544324b612d05 /libjava/java/nio/channels/spi/AbstractSelector.java
parentf5007beb6cfb5e1f121fa3da6099f2dd1f9d0de6 (diff)
downloadppe42-gcc-64540d8d5fd3d97c7cf8e6a2444da1051621db1d.tar.gz
ppe42-gcc-64540d8d5fd3d97c7cf8e6a2444da1051621db1d.zip
2002-11-13 Michael Koch <konqueror@gmx.de>
* java/nio/channels/AlreadyConnectedException.java: Removed unneeded import. (AlreadyConnectedException): Documentation added. * java/nio/channels/Pipe.java (SinkChannel.SinkChannel): Documentation added. (SinkChannel.validOps): New method. (SourceChannel.SourceChannel): Documentation added. (SourceChannel.validOps): New method. (Pipe): Documentation added. (open): Documentation added. (SinkChannel.channel): Documentation added. (SourceChannel.channel): Documentation added. * java/nio/channel/SelectableChannel.java (SelectableChannel): Documentation added. (blockingLock): Documentation added. (configureBlocking):Documentation added. (isBlocking):Documentation added. (isRegistered):Documentation added. (keyFor):Documentation added. (provider):Documentation added. (register): Documentation added. (validOps): Documentation added. * jaba/nio/channels/SelectionKey.java (SelectionKey): Documentation added. (attach): Documentation added. (attachment): Documentation added. (isAcceptable): Documentation added. (isConnetable): Documentation added. (isReadable): Documentation added. (isWritable): Documentation added. (cancel): Documentation added. (channel): Documentation added. (interestOps): Documentation added. (isValid): Documentation added. (readyOps): Documentation added. (selector): Documentation added. * jaba/nio/channels/Selector.java (Selector): Documentation added. (open): Documentation added. (close): Documentation added. (isOpen): Documentation added. (keys): Documentation added. (provider): Documentation added. (select): Documentation added. (selectedKeys): Documentation added. (selectNow): Documentation added. (wakeup): Documentation added. * java/nio/channels/spi/AbstractInterruptibleChannel.java (AbstractInterruptibleChannel): Documentation added. (opened): Default to true; (begin): Documentation added. (close): Set opened to false, documentation added. (isOpen): Documentation added. * java/nio/channels/spi/AbstractSelectionKey.java (AbstractSelectionKey): Documentation added. (cancel): Documentation added. (isValid): Documentation added. * java/nio/channels/spi/AbstractSelector.java (AbstractSelector): Documentation added. (begin): Documentation added. (close): Documentation added. (isOpen): Documentation added. (deregister): Documentation added. (end): Documentation added. (provider): Documentation added. (implCloseSelector): Documentation added. (register): Documentation added. * java/nio/channels/spi/SelectorProvider.java (SelectorProvider): Documentation added. (openDatagramChannel): Documentation added. (openPipe): Documentation added. (openSelector): Documentation added. (openServerSocketChannel): Documentation added. (openSocketChannel): Documentation added. (provider): Documentation added. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@59077 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java/nio/channels/spi/AbstractSelector.java')
-rw-r--r--libjava/java/nio/channels/spi/AbstractSelector.java50
1 files changed, 32 insertions, 18 deletions
diff --git a/libjava/java/nio/channels/spi/AbstractSelector.java b/libjava/java/nio/channels/spi/AbstractSelector.java
index 033a8d7f98b..fc0aeca32d9 100644
--- a/libjava/java/nio/channels/spi/AbstractSelector.java
+++ b/libjava/java/nio/channels/spi/AbstractSelector.java
@@ -37,6 +37,7 @@ exception statement from your version. */
package java.nio.channels.spi;
+import java.io.IOException;
import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import java.util.List;
@@ -44,57 +45,70 @@ import java.util.Set;
public abstract class AbstractSelector extends Selector
{
- boolean closed = true;
+ boolean closed = false;
SelectorProvider provider;
- protected AbstractSelector(SelectorProvider provider)
+ /**
+ * Initializes the slector.
+ */
+ protected AbstractSelector (SelectorProvider provider)
{
this.provider = provider;
}
- protected final void begin()
+ /**
+ * Marks the beginning of an I/O operation that might block indefinitely.
+ */
+ protected final void begin ()
{
}
/**
+ * Closes the channel.
+ *
* @exception IOException If an error occurs
*/
- public final void close()
+ public final void close () throws IOException
{
if (closed)
return;
+
closed = true;
- implCloseSelector();
+ implCloseSelector ();
}
- protected final void deregister(AbstractSelectionKey key)
+ /**
+ * Tells whether this channel is open or not.
+ */
+ public final boolean isOpen ()
{
- cancelledKeys().remove(key);
+ return ! closed;
}
-
- protected final void end()
+
+ protected final void deregister (AbstractSelectionKey key)
{
+ cancelledKeys ().remove (key);
}
- public final boolean isOpen()
+ protected final void end()
{
- return ! closed;
}
- public final SelectorProvider provider()
+ public final SelectorProvider provider ()
{
return provider;
}
-
+
protected final Set cancelledKeys()
{
return null;
}
-
+
/**
- * @exception IOException If an error occurs
+ * Closes the channel.
*/
- protected abstract void implCloseSelector();
-
- protected abstract SelectionKey register(AbstractSelectableChannel ch, int ops, Object att);
+ protected abstract void implCloseSelector () throws IOException;
+
+ protected abstract SelectionKey register (AbstractSelectableChannel ch,
+ int ops, Object att);
}
OpenPOWER on IntegriCloud