Package org.h2.util

# Class NetUtils

java.lang.Object
org.h2.util.NetUtils

public class NetUtils extends Object
This utility class contains socket helper functions.

## Method Summary

Modifier and Type
Method
Description
`static ServerSocket`
`closeSilently(ServerSocket socket)`
Close a server socket and ignore any exceptions.
`static Socket`
`createLoopbackSocket(int port, boolean ssl)`
Create a loopback socket (a socket that is connected to localhost) on this port.
`static ServerSocket`
`createServerSocket(int port, boolean ssl)`
Create a server socket.
`static Socket`
`createSocket(String server, int defaultPort, boolean ssl)`
Create a client socket that is connected to the given address and port.
`static Socket`
`createSocket(String server, int defaultPort, boolean ssl, int networkTimeout)`
Create a client socket that is connected to the given address and port.
`static Socket`
`createSocket(InetAddress address, int port, boolean ssl)`
Create a client socket that is connected to the given address and port.
`static Socket`
`createSocket(InetAddress address, int port, boolean ssl, int networkTimeout)`
Create a client socket that is connected to the given address and port.
`static String`
`getHostName(String localAddress)`
Get the host name of a local address, if available.
`static String`
`getLocalAddress()`
Get the local host address as a string.
`static StringBuilder`
`ipToShortForm(StringBuilder builder, byte[] address, boolean addBrackets)`
Appends short representation of the specified IP address to the string builder.
`static boolean`
`isLocalAddress(Socket socket)`
Check if a socket is connected to a local address.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Method Details

### createLoopbackSocket

public static Socket createLoopbackSocket(int port, boolean ssl) throws IOException
Create a loopback socket (a socket that is connected to localhost) on this port.

Parameters:
  `port` - the port
  `ssl` - if SSL should be used
Returns:
  the socket
Throws:
  `IOException` - on failure

### createSocket

public static Socket createSocket(String server, int defaultPort, boolean ssl) throws IOException
Create a client socket that is connected to the given address and port.

Parameters:
  `server` - to connect to (including an optional port)
  `defaultPort` - the default port (if not specified in the server address)
  `ssl` - if SSL should be used
Returns:
  the socket
Throws:
  `IOException` - on failure

### createSocket

public static Socket createSocket(String server, int defaultPort, boolean ssl, int networkTimeout) throws IOException
Create a client socket that is connected to the given address and port.

Parameters:
  `server` - to connect to (including an optional port)
  `defaultPort` - the default port (if not specified in the server address)
  `ssl` - if SSL should be used
  `networkTimeout` - socket so timeout
Returns:
  the socket
Throws:
  `IOException` - on failure

### createSocket

public static Socket createSocket(InetAddress address, int port, boolean ssl) throws IOException
Create a client socket that is connected to the given address and port.

Parameters:
  `address` - the address to connect to
  `port` - the port
  `ssl` - if SSL should be used
Returns:
  the socket
Throws:
  `IOException` - on failure

### createSocket

public static Socket createSocket(InetAddress address, int port, boolean ssl, int networkTimeout) throws IOException
Create a client socket that is connected to the given address and port.

Parameters:
  `address` - the address to connect to
  `port` - the port
  `ssl` - if SSL should be used
  `networkTimeout` - socket so timeout
Returns:
  the socket
Throws:
  `IOException` - on failure

### createServerSocket

public static ServerSocket createServerSocket(int port, boolean ssl)
Create a server socket. The system property h2.bindAddress is used if set.

Parameters:
  `port` - the port to listen on
  `ssl` - if SSL should be used
Returns:
  the server socket

### isLocalAddress

public static boolean isLocalAddress(Socket socket) throws UnknownHostException
Check if a socket is connected to a local address.

Parameters:
  `socket` - the socket
Returns:
  true if it is
Throws:
  `UnknownHostException` - on failure

### closeSilently

public static ServerSocket closeSilently(ServerSocket socket)
Close a server socket and ignore any exceptions.

Parameters:
  `socket` - the socket
Returns:
  null

### getLocalAddress

public static String getLocalAddress()
Get the local host address as a string. For performance, the result is cached for one second.

Returns:
  the local host address

### getHostName

public static String getHostName(String localAddress)
Get the host name of a local address, if available.

Parameters:
  `localAddress` - the local address
Returns:
  the host name, or another text if not available

### ipToShortForm

public static StringBuilder ipToShortForm(StringBuilder builder, byte[] address, boolean addBrackets)
Appends short representation of the specified IP address to the string builder.

Parameters:
  `builder` - string builder to append to, or `null`
  `address` - IP address
  `addBrackets` - if (`true`, add brackets around IPv6 addresses
Returns:
  the specified or the new string builder with short representation of specified address