Class Sockets
- java.lang.Object
-
- jdk.net.Sockets
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
Methods
Modifier and Type | Method | Description |
---|---|---|
static <T> T | getOption(DatagramSocket s,
SocketOption<T> name) | Returns the value of a socket option from a |
static <T> T | getOption(ServerSocket s,
SocketOption<T> name) | Returns the value of a socket option from a |
static <T> T | getOption(Socket s,
SocketOption<T> name) | Returns the value of a socket option from a |
static <T> void | setOption(DatagramSocket s,
SocketOption<T> name,
T value) | Sets the value of a socket option on a |
static <T> void | setOption(ServerSocket s,
SocketOption<T> name,
T value) | Sets the value of a socket option on a |
static <T> void | setOption(Socket s,
SocketOption<T> name,
T value) | Sets the value of a socket option on a |
static Set<SocketOption<?>> | supportedOptions(Class<?> socketType) | Returns a set of |
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods
setOption
public static <T> void setOption(Socket s, SocketOption<T> name, T value) throws IOException
Sets the value of a socket option on a Socket
- Parameters:
-
s
- the socket -
name
- The socket option -
value
- 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 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
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
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
supportedOptions
public static Set<SocketOption<?>> supportedOptions(Class<?> socketType)
Returns a set of SocketOption
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.
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/jdk.net/jdk/net/Sockets.html