+2003-02-11 Michael Koch <konqueror@gmx.de>
+
+ * java/nio/channels/DatagramChannel.java
+ (write): Throws IOException.
+ (connect): Throws IOException.
+ (disconnect): Throws IOException.
+ (read): Throws IOException.
+ (receive): Throws IOException.
+ (send): Throws IOException.
+ * java/nio/channels/Pipe.java
+ (open): Throws IOException.
+ * java/nio/channels/SelectableChannel.java
+ (configureBlocking): Throws IOException.
+ * java/nio/channels/ServerSocketChannel.java
+ (accept): Throws IOException.
+ * java/nio/channels/SocketChannel.java
+ (SocketChannel): Implements ByteChannel, ScatteringByteChannel,
+ GatheringByteChannel.
+ (read): Throws IOException.
+ (write): Throws IOException.
+ (finishConnect): Throws IOException.
+ * java/nio/channels/spi/AbstractInterruptibleChannel.java
+ (end): Throws AsynchronousCloseException.
+ * java/nio/channels/spi/AbstractSelectableChannel.java
+ (configureBlocking): Throws IOException.
+ (implCloseChannel): Throws IOException.
+ (implCloseSelectableChannel): Throws IOException.
+ (implConfigureBlocking): Throws IOException.
+ * java/nio/channels/spi/SelectorProvider.java
+ (openDatagramChannel): Throws IOException.
+ (openPipe): Throws IOException.
+ (openSelector): Throws IOException.
+ (openServerSocketChannel): Throws IOException.
+ (openSocketChannel): Throws IOException.
+
2003-02-11 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/FileLockImpl.java,
* @exception IOException If an error occurs
* @exception NotYetConnectedException The channel's socket is not connected.
*/
- public final long write (ByteBuffer[] srcs)
+ public final long write (ByteBuffer[] srcs) throws IOException
{
long b = 0;
* @exception SecurityException If a security manager has been installed and
* it does not permit datagrams to be sent to the given address.
*/
- public abstract DatagramChannel connect (SocketAddress remote);
+ public abstract DatagramChannel connect (SocketAddress remote)
+ throws IOException;
/**
* Disonnects this channel's socket.
*
* @exception IOException If an error occurs
*/
- public abstract DatagramChannel disconnect ();
+ public abstract DatagramChannel disconnect () throws IOException;
/**
* Tells whether or not this channel's socket is connected.
/**
* Reads data from this channel.
*/
- public abstract int read (ByteBuffer dst);
+ public abstract int read (ByteBuffer dst) throws IOException;
/**
* Reads data from this channel.
* @exception IOException If an error occurs.
* @exception NotYetConnectedException The channel's socket is not connected.
*/
- public abstract long read (ByteBuffer[] dsts, int offset, int length);
+ public abstract long read (ByteBuffer[] dsts, int offset, int length)
+ throws IOException;
/**
* Receives a datagram via this channel.
* @exception SecurityException If a security manager has been installed and
* it does not permit datagrams to be sent to the given address.
*/
- public abstract SocketAddress receive (ByteBuffer dst);
+ public abstract SocketAddress receive (ByteBuffer dst) throws IOException;
/**
* Sends a datagram via this channel.
* @exception SecurityException If a security manager has been installed and
* it does not permit datagrams to be sent to the given address.
*/
- public abstract int send (ByteBuffer src, SocketAddress target);
+ public abstract int send (ByteBuffer src, SocketAddress target)
+ throws IOException;
/**
* Retrieves the channel's socket.
* @exception IOException If an error occurs.
* @exception NotYetConnectedException The channel's socket is not connected.
*/
- public abstract int write (ByteBuffer src);
+ public abstract int write (ByteBuffer src) throws IOException;
/**
* Writes data to this channel.
* @exception IOException If an error occurs.
* @exception NotYetConnectedException The channel's socket is not connected.
*/
- public abstract long write (ByteBuffer[] srcs, int offset, int length);
+ public abstract long write (ByteBuffer[] srcs, int offset, int length)
+ throws IOException;
/**
* Retrieves the valid operations for this channel.
package java.nio.channels;
+import java.io.IOException;
import java.nio.channels.spi.AbstractSelectableChannel;
import java.nio.channels.spi.SelectorProvider;
*
* @exception IOException If an error occurs
*/
- public static Pipe open()
+ public static Pipe open() throws IOException
{
return SelectorProvider.provider ().openPipe();
}
package java.nio.channels;
+import java.io.IOException;
import java.nio.channels.spi.AbstractInterruptibleChannel;
import java.nio.channels.spi.SelectorProvider;
* is registered with one or more selectors.
* @exception IOException If an error occurs.
*/
- public abstract SelectableChannel configureBlocking (boolean block);
+ public abstract SelectableChannel configureBlocking (boolean block)
+ throws IOException;
/**
* Tells whether this channel is blocking or not.
* @exception SecurityException If a security manager has been installed and
* it does not permit access to the remote endpoint of the new connection.
*/
- public abstract SocketChannel accept ();
+ public abstract SocketChannel accept () throws IOException;
/**
* Retrieves the channels socket.
* @since 1.4
*/
abstract public class SocketChannel extends AbstractSelectableChannel
+ implements ByteChannel, ScatteringByteChannel, GatheringByteChannel
{
/**
* Initializes this socket.
* @exception IOException If an error occurs
* @exception NotYetConnectedException If this channel is not yet connected.
*/
- public final long read (ByteBuffer[] dsts)
+ public final long read (ByteBuffer[] dsts) throws IOException
{
long b = 0;
* @exception IOException If an error occurs
* @exception NotYetConnectedException If this channel is not yet connected.
*/
- public final long write (ByteBuffer[] dsts)
+ public final long write (ByteBuffer[] dsts) throws IOException
{
long b = 0;
* @exception IOException If an error occurs
* @exception NotYetConnectedException If this channel is not yet connected.
*/
- public abstract int read (ByteBuffer dst);
+ public abstract int read (ByteBuffer dst) throws IOException;
/**
* Connects the channel's socket to the remote address.
* @exception NoConnectionPendingException If this channel is not connected
* and a connection operation has not been initiated.
*/
- public abstract boolean finishConnect ();
+ public abstract boolean finishConnect () throws IOException;
/**
* Tells whether or not the channel's socket is connected.
* @exception IOException If an error occurs
* @exception NotYetConnectedException If this channel is not yet connected.
*/
- public abstract long read (ByteBuffer[] dsts, int offset, int length);
+ public abstract long read (ByteBuffer[] dsts, int offset, int length)
+ throws IOException;
/**
* Retrieves the channel's socket.
* @exception IOException If an error occurs
* @exception NotYetConnectedException If this channel is not yet connected.
*/
- public abstract int write (ByteBuffer src);
+ public abstract int write (ByteBuffer src) throws IOException;
/**
* Writes data to the channel.
* @exception IOException If an error occurs
* @exception NotYetConnectedException If this channel is not yet connected.
*/
- public abstract long write (ByteBuffer[] srcs, int offset, int length);
+ public abstract long write (ByteBuffer[] srcs, int offset, int length)
+ throws IOException;
}
package java.nio.channels.spi;
import java.io.IOException;
+import java.nio.channels.AsynchronousCloseException;
import java.nio.channels.Channel;
import java.nio.channels.InterruptibleChannel;
* I/O operation was interrupted.
*/
protected final void end (boolean completed)
+ throws AsynchronousCloseException
{
}
* Adjusts this channel's blocking mode.
*/
public final SelectableChannel configureBlocking (boolean block)
+ throws IOException
{
synchronized (LOCK)
{
*
* @exception IOException If an error occurs
*/
- protected final void implCloseChannel ()
+ protected final void implCloseChannel () throws IOException
{
implCloseSelectableChannel ();
}
/**
* Closes this selectable channel.
*/
- protected abstract void implCloseSelectableChannel ();
+ protected abstract void implCloseSelectableChannel () throws IOException;
/**
* Adjusts this channel's blocking mode.
*/
- protected abstract void implConfigureBlocking (boolean block);
+ protected abstract void implConfigureBlocking (boolean block)
+ throws IOException;
/**
* Tells whether or not every I/O operation on this channel will block
package java.nio.channels.spi;
/* import gnu.java.nio.channels.SelectorProviderImpl; */
+import java.io.IOException;
import java.nio.channels.DatagramChannel;
import java.nio.channels.Pipe;
import java.nio.channels.ServerSocketChannel;
/**
* Opens a datagram channel.
*/
- public abstract DatagramChannel openDatagramChannel ();
+ public abstract DatagramChannel openDatagramChannel () throws IOException;
/**
* Opens a pipe.
*/
- public abstract Pipe openPipe ();
+ public abstract Pipe openPipe () throws IOException;
/**
* Opens a selector.
*/
- public abstract AbstractSelector openSelector ();
+ public abstract AbstractSelector openSelector () throws IOException;
/**
* Opens a server socket channel.
*/
- public abstract ServerSocketChannel openServerSocketChannel ();
+ public abstract ServerSocketChannel openServerSocketChannel ()
+ throws IOException;
/**
* Opens a socket channel.
*/
- public abstract SocketChannel openSocketChannel ();
+ public abstract SocketChannel openSocketChannel () throws IOException;
/**
* Returns the system-wide default selector provider for this invocation