- java.lang.Object
-
- jdk.net.Sockets
-
public class Sockets extends Object
Defines static methods to set and get socket options defined by theSocketOption
interface. All of the standard options defined bySocket
,ServerSocket
, andDatagramSocket
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 forStandardSocketOptions
.- See Also:
NetworkChannel
-
-
Method Summary
Modifier and Type Method Description static <T> T
getOption(DatagramSocket s, SocketOption<T> name)
Returns the value of a socket option from aDatagramSocket
orMulticastSocket
static <T> T
getOption(ServerSocket s, SocketOption<T> name)
Returns the value of a socket option from aServerSocket
static <T> T
getOption(Socket s, SocketOption<T> name)
Returns the value of a socket option from aSocket
static <T> void
setOption(DatagramSocket s, SocketOption<T> name, T value)
Sets the value of a socket option on aDatagramSocket
orMulticastSocket
static <T> void
setOption(ServerSocket s, SocketOption<T> name, T value)
Sets the value of a socket option on aServerSocket
static <T> void
setOption(Socket s, SocketOption<T> name, T value)
Sets the value of a socket option on aSocket
static Set<SocketOption<?>>
supportedOptions(Class<?> socketType)
Returns a set ofSocketOption
s supported by the given socket type.
-
-
-
Method Detail
-
setOption
public static <T> void setOption(Socket s, SocketOption<T> name, T value) throws IOException
Sets the value of a socket option on aSocket
- Parameters:
s
- the socketname
- The socket optionvalue
- The value of the socket option. May be null for some options.- 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, or socket is closed.SecurityException
- if a security manager is set and the caller does not have any required permission.NullPointerException
- if name is null- See Also:
StandardSocketOptions
-
getOption
public static <T> T getOption(Socket s, SocketOption<T> name) throws IOException
Returns the value of a socket option from aSocket
- Parameters:
s
- the socketname
- 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 occursSecurityException
- 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 aServerSocket
- Parameters:
s
- the socketname
- The socket optionvalue
- 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 occursNullPointerException
- if name is nullSecurityException
- if a security manager is set and the caller does not have any required permission.- See Also:
StandardSocketOptions
-
getOption
public static <T> T getOption(ServerSocket s, SocketOption<T> name) throws IOException
Returns the value of a socket option from aServerSocket
- Parameters:
s
- the socketname
- 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 occursNullPointerException
- if name is nullSecurityException
- 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 aDatagramSocket
orMulticastSocket
- Parameters:
s
- the socketname
- The socket optionvalue
- 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 occursNullPointerException
- if name is nullSecurityException
- if a security manager is set and the caller does not have any required permission.- See Also:
StandardSocketOptions
-
getOption
public static <T> T getOption(DatagramSocket s, SocketOption<T> name) throws IOException
Returns the value of a socket option from aDatagramSocket
orMulticastSocket
- Parameters:
s
- the socketname
- 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 occursNullPointerException
- if name is nullSecurityException
- if a security manager is set and the caller does not have any required permission.- See Also:
StandardSocketOptions
-
supportedOptions
public static Set<SocketOption<?>> supportedOptions(Class<?> socketType)
Returns a set ofSocketOption
s 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.
-
-