The java.nio.channels.spi package contains various service-provider classes and methods to create a new selector provider class.
To learn more about java.nio.channels.spi package, see: http://java.sun.com/j2se/1.4.2/docs/api/java/nio/channels/spi/package-summary.html
The commonly used classes in the java.nio.channels.spi package are:
The SelectorProvider class defines various methods to create datagram channel, socket channel, and selectable channels. The most commonly used methods in the SelectorProvider class are:
openDatagramChannel() : Returns an object of the DatagramChannel class. The openDatagramChannel() method opens a datagram channel. The datagram channel is a type of channel that connects the selector to a stream-oriented socket using User Datagram Protocol (UDP).
openSelectors() : Returns an object of the AbstractSelector class. The openSelectors() method opens a selector.
openSocketChannel() : Returns an object of the SocketChannel class. The openSocketChannel() method opens a socket channel.
provider() : Returns an object of the SelectorProvider class that contains a default selector provider. The provider() method is a static method.
The AbstractSelector class works as a base implementation class for selectors. The AbstractSelector class defines methods that work with selectors. The most commonly used methods in the AbstractSelector class are:
begin() : Identifies the beginning of the input/output operation.
end() :Identifies the end of the input/output operation.
isOpen() : Returns a Boolean value that indicates whether the selector is open or close. The isOpen() method returns true if the selector is open .
provider() : Returns an object of the SelectorProvider class that creates the channel.
register() : Returns an object of the SelectionKey class. The register() method registers the given channel with the selector.