gnu.java.nio

Class SocketChannelImpl

Implemented Interfaces:
ByteChannel, Channel, Closeable, GatheringByteChannel, InterruptibleChannel, ReadableByteChannel, ScatteringByteChannel, WritableByteChannel

public final class SocketChannelImpl
extends SocketChannel

Method Summary

boolean
connect(SocketAddress remote)
void
finalizer()
boolean
finishConnect()
protected void
implCloseSelectableChannel()
Closes this selectable channel.
protected void
implConfigureBlocking(boolean blocking)
Adjusts this channel's blocking mode.
boolean
isConnected()
boolean
isConnectionPending()
int
read(ByteBuffer dst)
Reads a sequence of bytes from this channel into the given buffer
long
read(ByteBuffer[] dsts, int offset, int length)
Socket
socket()
int
write(ByteBuffer src)
long
write(ByteBuffer[] srcs, int offset, int length)
Writes a sequence of bytes to this channel from a subsequence of the given buffers

Methods inherited from class java.nio.channels.SocketChannel

connect, finishConnect, isConnected, isConnectionPending, open, open, read, read, read, socket, validOps, write, write, write

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

blockingLock, configureBlocking, implCloseChannel, implCloseSelectableChannel, implConfigureBlocking, isBlocking, isRegistered, keyFor, provider, register

Methods inherited from class java.nio.channels.SelectableChannel

blockingLock, configureBlocking, isBlocking, isRegistered, keyFor, provider, register, register, validOps

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

begin, close, end, implCloseChannel, isOpen

Methods inherited from class java.lang.Object

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

Method Details

connect

public boolean connect(SocketAddress remote)
            throws IOException
Overrides:
connect in interface SocketChannel

finalizer

public void finalizer()

finishConnect

public boolean finishConnect()
            throws IOException
Overrides:
finishConnect in interface SocketChannel

implCloseSelectableChannel

protected void implCloseSelectableChannel()
            throws IOException
Closes this selectable channel.
Overrides:
implCloseSelectableChannel in interface AbstractSelectableChannel
Throws:
IOException - If an error occurs

implConfigureBlocking

protected void implConfigureBlocking(boolean blocking)
            throws IOException
Adjusts this channel's blocking mode.
Overrides:
implConfigureBlocking in interface AbstractSelectableChannel
Parameters:
blocking - true if blocking should be enabled, false otherwise
Throws:
IOException - If an error occurs

isConnected

public boolean isConnected()
Overrides:
isConnected in interface SocketChannel

isConnectionPending

public boolean isConnectionPending()
Overrides:
isConnectionPending in interface SocketChannel

read

public int read(ByteBuffer dst)
            throws IOException
Reads a sequence of bytes from this channel into the given buffer
Specified by:
read in interface ReadableByteChannel
Overrides:
read in interface SocketChannel
Parameters:
dst - the buffer to put the read data into
Returns:
the numer of bytes read
Throws:
IOException - If an error occurs
NonReadableChannelException - If this channel was not opened for reading

read

public long read(ByteBuffer[] dsts,
                 int offset,
                 int length)
            throws IOException
Specified by:
read in interface ScatteringByteChannel
Overrides:
read in interface SocketChannel

socket

public Socket socket()
Overrides:
socket in interface SocketChannel

write

public int write(ByteBuffer src)
            throws IOException
Specified by:
write in interface WritableByteChannel
Overrides:
write in interface SocketChannel

write

public long write(ByteBuffer[] srcs,
                  int offset,
                  int length)
            throws IOException
Writes a sequence of bytes to this channel from a subsequence of the given buffers
Specified by:
write in interface GatheringByteChannel
Overrides:
write in interface SocketChannel
Throws:
IndexOutOfBoundsException - If the preconditions on the offset and length parameters do not hold
IOException - If an error occurs
NonWritableChannelException - If this channel was not opened for writing

SocketChannelImpl.java -- Copyright (C) 2002, 2003, 2004, 2006, 2007 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.