public abstract class

SelectorProvider

extends Object
java.lang.Object
   ↳ java.nio.channels.spi.SelectorProvider

Class Overview

SelectorProvider is an abstract base class that declares methods for providing instances of DatagramChannel, Pipe, Selector , ServerSocketChannel, and SocketChannel. All the methods of this class are thread-safe.

A provider instance can be retrieved through a system property or the configuration file in a jar file; if no provider is available that way then the system default provider is returned.

Summary

Protected Constructors
SelectorProvider()
Constructs a new SelectorProvider.
Public Methods
Channel inheritedChannel()
Returns the channel inherited from the instance that created this virtual machine.
abstract DatagramChannel openDatagramChannel()
Creates a new open DatagramChannel.
abstract Pipe openPipe()
Creates a new Pipe.
abstract AbstractSelector openSelector()
Creates a new selector.
abstract ServerSocketChannel openServerSocketChannel()
Creates a new open ServerSocketChannel.
abstract SocketChannel openSocketChannel()
Create a new open SocketChannel.
synchronized static SelectorProvider provider()
Gets a provider instance by executing the following steps when called for the first time:
  • if the system property "java.nio.channels.spi.SelectorProvider" is set, the value of this property is the class name of the provider returned;
  • if there is a provider-configuration file named "java.nio.channels.spi.SelectorProvider" in META-INF/services of a jar file valid in the system class loader, the first class name is the provider's class name;
  • otherwise, a system default provider will be returned.
[Expand]
Inherited Methods
From class java.lang.Object

Protected Constructors

protected SelectorProvider ()

Since: API Level 1

Constructs a new SelectorProvider.

Throws
SecurityException if there is a security manager installed that does not permit the runtime permission labeled "selectorProvider".

Public Methods

public Channel inheritedChannel ()

Since: API Level 1

Returns the channel inherited from the instance that created this virtual machine.

Returns
  • the channel.
Throws
IOException if an I/O error occurs.
SecurityException if there is a security manager installed that does not permit the runtime permission labeled "selectorProvider".

public abstract DatagramChannel openDatagramChannel ()

Since: API Level 1

Creates a new open DatagramChannel.

Returns
  • the new channel.
Throws
IOException if an I/O error occurs.

public abstract Pipe openPipe ()

Since: API Level 1

Creates a new Pipe.

Returns
  • the new pipe.
Throws
IOException if an I/O error occurs.

public abstract AbstractSelector openSelector ()

Since: API Level 1

Creates a new selector.

Returns
  • the new selector.
Throws
IOException if an I/O error occurs.

public abstract ServerSocketChannel openServerSocketChannel ()

Since: API Level 1

Creates a new open ServerSocketChannel.

Returns
  • the new channel.
Throws
IOException if an I/O error occurs.

public abstract SocketChannel openSocketChannel ()

Since: API Level 1

Create a new open SocketChannel.

Returns
  • the new channel.
Throws
IOException if an I/O error occurs.

public static synchronized SelectorProvider provider ()

Since: API Level 1

Gets a provider instance by executing the following steps when called for the first time:

  • if the system property "java.nio.channels.spi.SelectorProvider" is set, the value of this property is the class name of the provider returned;
  • if there is a provider-configuration file named "java.nio.channels.spi.SelectorProvider" in META-INF/services of a jar file valid in the system class loader, the first class name is the provider's class name;
  • otherwise, a system default provider will be returned.

Returns
  • the provider.