Package Summary  Overview Summary

class:Sockets [NONE]


public class Sockets
extends Object
Defines static methods to set and get socket options defined by the SocketOption interface. All of the standard options defined by Socket, ServerSocket, and DatagramSocket can be set this way, as well as additional or platform specific options supported by each socket type.

The supportedOptions(Class) method can be called to determine the complete set of options available (per socket type) on the current system.

When a security manager is installed, some non-standard socket options may require a security permission before being set or get. The details are specified in ExtendedSocketOptions. No permission is required for StandardSocketOptions.

See Also:
NetworkChannel

method:getOption(java.net.Socket,java.net.SocketOption) [NONE]

  • getOption

    public static  <T> T getOption​(Socket s, SocketOption<T> name) throws IOException
    Returns the value of a socket option from a Socket
    Parameters:
    s - the socket
    name - The socket option
    Returns:
    The value of the socket option.
    Throws:
    UnsupportedOperationException - if the socket does not support the option.
    IOException - if an I/O error occurs
    SecurityException - if a security manager is set and the caller does not have any required permission.
    NullPointerException - if name is null
    See Also:
    StandardSocketOptions
  • setOption

    public static  <T> void setOption​(ServerSocket s, SocketOption<T> name, T value) throws IOException
    Sets the value of a socket option on a ServerSocket
    Parameters:
    s - the socket
    name - The socket option
    value - The value of the socket option.
    Throws:
    UnsupportedOperationException - if the socket does not support the option.
    IllegalArgumentException - if the value is not valid for the option.
    IOException - if an I/O error occurs
    NullPointerException - if name is null
    SecurityException - if a security manager is set and the caller does not have any required permission.
    See Also:
    StandardSocketOptions
  • method:getOption(java.net.ServerSocket,java.net.SocketOption) [NONE]

    getOption

    public static  <T> T getOption​(ServerSocket s, SocketOption<T> name) throws IOException
    Returns the value of a socket option from a ServerSocket
    Parameters:
    s - the socket
    name - The socket option
    Returns:
    The value of the socket option.
    Throws:
    UnsupportedOperationException - if the socket does not support the option.
    IOException - if an I/O error occurs
    NullPointerException - if name is null
    SecurityException - if a security manager is set and the caller does not have any required permission.
    See Also:
    StandardSocketOptions
  • setOption

    public static  <T> void setOption​(DatagramSocket s, SocketOption<T> name, T value) throws IOException
    Sets the value of a socket option on a DatagramSocket or MulticastSocket
    Parameters:
    s - the socket
    name - The socket option
    value - The value of the socket option.
    Throws:
    UnsupportedOperationException - if the socket does not support the option.
    IllegalArgumentException - if the value is not valid for the option.
    IOException - if an I/O error occurs
    NullPointerException - if name is null
    SecurityException - if a security manager is set and the caller does not have any required permission.
    See Also:
    StandardSocketOptions
  • method:getOption(java.net.DatagramSocket,java.net.SocketOption) [NONE]

    getOption

    public static  <T> T getOption​(DatagramSocket s, SocketOption<T> name) throws IOException
    Returns the value of a socket option from a DatagramSocket or MulticastSocket
    Parameters:
    s - the socket
    name - The socket option
    Returns:
    The value of the socket option.
    Throws:
    UnsupportedOperationException - if the socket does not support the option.
    IOException - if an I/O error occurs
    NullPointerException - if name is null
    SecurityException - if a security manager is set and the caller does not have any required permission.
    See Also:
    StandardSocketOptions

    method:supportedOptions(java.lang.Class) [NONE]

    supportedOptions

    public static  Set<SocketOption<?>> supportedOptions​(Class<?> socketType)
    Returns a set of SocketOptions supported by the given socket type. This set may include standard options and also non standard extended options.
    Parameters:
    socketType - the type of java.net socket
    Throws:
    IllegalArgumentException - if socketType is not a valid socket type from the java.net package.