Top Description Methods
java.nio.channels

public Interface NetworkChannel

extends Channel
Known Direct Subinterfaces
java.nio.channels.MulticastChannel
Known Direct Implementers
java.nio.channels.ServerSocketChannel, java.nio.channels.SocketChannel, java.nio.channels.AsynchronousServerSocketChannel, java.nio.channels.AsynchronousSocketChannel
Imports
java.net.SocketOption, .SocketAddress, java.util.Set, java.io.IOException

A channel to a network socket.

A channel that implements this interface is a channel to a network socket. The bind method is used to bind the socket to a local address, the getLocalAddress method returns the address that the socket is bound to, and the setOption and getOption methods are used to set and query socket options. An implementation of this interface should specify the socket options that it supports.

The bind and setOption methods that do not otherwise have a value to return are specified to return the network channel upon which they are invoked. This allows method invocations to be chained. Implementations of this interface should specialize the return type so that method invocations on the implementation class can be chained.

Since
1.7

Method Summary

Modifier and TypeMethod and Description
public NetworkChannel

Returns:

This channel
bind
(SocketAddress
The address to bind the socket, or null to bind the socket to an automatically assigned socket address
local
)

Binds the channel's socket to a local address.

public SocketAddress

Returns:

The socket address that the socket is bound to, or null if the channel's socket is not bound
getLocalAddress
()

Returns the socket address that this channel's socket is bound to.

public <
The type of the socket option value
T
>
T

Returns:

The value of the socket option. A value of null may be a valid value for some socket options.
getOption
(SocketOption<T>
The socket option
name
)

Returns the value of a socket option.

public <
The type of the socket option value
T
>
NetworkChannel

Returns:

This channel
setOption
(SocketOption<T>
The socket option
name
,
T
The value of the socket option. A value of null may be a valid value for some socket options.
value
)

Sets the value of a socket option.

public Set<SocketOption<?>>

Returns:

A set of the socket options supported by this channel
supportedOptions
()

Returns a set of the socket options supported by this channel.

Inherited from java.nio.channels.Channel:
closeisOpen

Method Detail

bindback to summary
public NetworkChannel bind(SocketAddress local) throws IOException

Binds the channel's socket to a local address.

This method is used to establish an association between the socket and a local address. Once an association is established then the socket remains bound until the channel is closed. If the local parameter has the value null then the socket will be bound to an address that is assigned automatically.

Parameters
local:SocketAddress

The address to bind the socket, or null to bind the socket to an automatically assigned socket address

Returns:NetworkChannel

This channel

Exceptions
IOException:
If some other I/O error occurs
AlreadyBoundException:
If the socket is already bound
UnsupportedAddressTypeException:
If the type of the given address is not supported
ClosedChannelException:
If the channel is closed
SecurityException:
If a security manager is installed and it denies an unspecified permission. An implementation of this interface should specify any required permissions.
See Also
getLocalAddress
getLocalAddressback to summary
public SocketAddress getLocalAddress() throws IOException

Returns the socket address that this channel's socket is bound to.

Where the channel is bound to an Internet Protocol socket address then the return value from this method is of type java.net.InetSocketAddress.

Returns:SocketAddress

The socket address that the socket is bound to, or null if the channel's socket is not bound

Exceptions
IOException:
If an I/O error occurs
ClosedChannelException:
If the channel is closed
getOptionback to summary
public <T> T getOption(SocketOption<T> name) throws IOException

Returns the value of a socket option.

Parameters
<T>
The type of the socket option value
name:SocketOption<T>

The socket option

Returns:T

The value of the socket option. A value of null may be a valid value for some socket options.

Exceptions
IOException:
If an I/O error occurs
UnsupportedOperationException:
If the socket option is not supported by this channel
ClosedChannelException:
If this channel is closed
See Also
java.net.StandardSocketOptions
setOptionback to summary
public <T> NetworkChannel setOption(SocketOption<T> name, T value) throws IOException

Sets the value of a socket option.

Parameters
<T>
The type of the socket option value
name:SocketOption<T>

The socket option

value:T

The value of the socket option. A value of null may be a valid value for some socket options.

Returns:NetworkChannel

This channel

Exceptions
IOException:
If an I/O error occurs
UnsupportedOperationException:
If the socket option is not supported by this channel
IllegalArgumentException:
If the value is not a valid value for this socket option
ClosedChannelException:
If this channel is closed
See Also
java.net.StandardSocketOptions
supportedOptionsback to summary
public Set<SocketOption<?>> supportedOptions()

Returns a set of the socket options supported by this channel.

This method will continue to return the set of options even after the channel has been closed.

Returns:Set<SocketOption<?>>

A set of the socket options supported by this channel