gnu.java.nio

Class SelectionKeyImpl

Known Direct Subclasses:
DatagramChannelSelectionKey, ServerSocketChannelSelectionKey, SocketChannelSelectionKey, SocketChannelSelectionKeyImpl

public abstract class SelectionKeyImpl
extends AbstractSelectionKey

Field Summary

Fields inherited from class java.nio.channels.SelectionKey

OP_ACCEPT, OP_CONNECT, OP_READ, OP_WRITE

Constructor Summary

SelectionKeyImpl(SelectableChannel ch, SelectorImpl impl)

Method Summary

SelectableChannel
channel()
return the channel attached to the key.
abstract int
getNativeFD()
int
interestOps()
Returns the key's interest set.
SelectionKey
interestOps(int ops)
Sets this key's interest set to the given value.
int
readyOps()
Retrieves this key's ready-operation set.
SelectionKey
readyOps(int ops)
Selector
selector()
Returns the selector for which this key was created.

Methods inherited from class java.nio.channels.spi.AbstractSelectionKey

cancel, isValid

Methods inherited from class java.nio.channels.SelectionKey

attach, attachment, cancel, channel, interestOps, interestOps, isAcceptable, isConnectable, isReadable, isValid, isWritable, readyOps, selector

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

SelectionKeyImpl

public SelectionKeyImpl(SelectableChannel ch,
                        SelectorImpl impl)

Method Details

channel

public SelectableChannel channel()
return the channel attached to the key.
Overrides:
channel in interface SelectionKey

getNativeFD

public abstract int getNativeFD()

interestOps

public int interestOps()
Returns the key's interest set.
Overrides:
interestOps in interface SelectionKey
Throws:
CancelledKeyException - If this key has been cancelled

interestOps

public SelectionKey interestOps(int ops)
Sets this key's interest set to the given value.
Overrides:
interestOps in interface SelectionKey
Throws:
CancelledKeyException - If this key has been cancelled
IllegalArgumentException - If a bit in the set does not correspond to an operation that is supported by this key's channel, that is, if set & ~(channel().validOps()) != 0

readyOps

public int readyOps()
Retrieves this key's ready-operation set.
Overrides:
readyOps in interface SelectionKey
Throws:
CancelledKeyException - If this key has been cancelled

readyOps

public SelectionKey readyOps(int ops)

selector

public Selector selector()
Returns the selector for which this key was created.
Overrides:
selector in interface SelectionKey

SelectionKeyImpl.java -- Copyright (C) 2002, 2003, 2006 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 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.