public class UnreliableSocketFactory extends StandardSocketFactory
| Modifier and Type | Class and Description |
|---|---|
(package private) static class |
UnreliableSocketFactory.HangingInputStream |
(package private) static class |
UnreliableSocketFactory.HangingOutputStream |
(package private) class |
UnreliableSocketFactory.HangingSocket |
| Modifier and Type | Field and Description |
|---|---|
(package private) static java.util.List<java.lang.String> |
CONNECTION_ATTEMPTS |
static long |
DEFAULT_TIMEOUT_MILLIS |
private java.lang.String |
hostname |
(package private) static java.util.Set<java.lang.String> |
HUNG_CONNECT_HOSTS |
(package private) static java.util.Set<java.lang.String> |
HUNG_READ_HOSTS |
(package private) static java.util.Set<java.lang.String> |
HUNG_WRITE_HOSTS |
(package private) static java.util.Set<java.lang.String> |
IMMEDIATELY_DOWNED_HOSTS |
private static java.util.Map<java.lang.String,java.lang.String> |
MAPPED_HOSTS |
private int |
portNumber |
private PropertySet |
propSet |
static java.lang.String |
STATUS_CONNECTED |
static java.lang.String |
STATUS_FAILED |
static java.lang.String |
STATUS_UNKNOWN |
host, loginTimeoutCheckTimestamp, loginTimeoutCountdown, port, rawSocket, socketTimeoutBackup, sslSocket| Constructor and Description |
|---|
UnreliableSocketFactory() |
| Modifier and Type | Method and Description |
|---|---|
<T extends java.io.Closeable> |
connect(java.lang.String host_name,
int port_number,
PropertySet pset,
int loginTimeout)
Creates a new socket or channel using the given properties.
|
static void |
dontDownHost(java.lang.String hostname) |
static void |
dontHangOnConnect(java.lang.String hostname) |
static void |
dontHangOnRead(java.lang.String hostname) |
static void |
dontHangOnWrite(java.lang.String hostname) |
static void |
downHost(java.lang.String hostname) |
static void |
flushAllStaticData() |
static void |
flushConnectionAttempts() |
static java.lang.String |
getHostConnectedStatus(java.lang.String host) |
static java.lang.String |
getHostFailedStatus(java.lang.String host) |
static java.lang.String |
getHostFromLastConnection() |
static java.lang.String |
getHostFromPastConnection(int pos) |
static java.util.List<java.lang.String> |
getHostsFromAllConnections() |
static java.util.List<java.lang.String> |
getHostsFromLastConnections(int count) |
static java.lang.String |
getHostUnknownStatus(java.lang.String host) |
private java.net.Socket |
getNewSocket() |
static void |
hangOnConnect(java.lang.String hostname) |
static void |
hangOnRead(java.lang.String hostname) |
static void |
hangOnWrite(java.lang.String hostname) |
static boolean |
isConnected() |
static void |
mapHost(java.lang.String alias,
java.lang.String orig) |
(package private) static void |
sleepMillisForProperty(PropertySet pset,
PropertyKey name) |
afterHandshake, beforeHandshake, configureSocket, createSocket, getRealTimeout, performTlsHandshake, performTlsHandshake, resetLoginTimeCountdownclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitisLocallyConnected, isLocallyConnectedpublic static final java.lang.String STATUS_UNKNOWN
public static final java.lang.String STATUS_CONNECTED
public static final java.lang.String STATUS_FAILED
public static final long DEFAULT_TIMEOUT_MILLIS
private static final java.util.Map<java.lang.String,java.lang.String> MAPPED_HOSTS
static final java.util.Set<java.lang.String> HUNG_READ_HOSTS
static final java.util.Set<java.lang.String> HUNG_WRITE_HOSTS
static final java.util.Set<java.lang.String> HUNG_CONNECT_HOSTS
static final java.util.Set<java.lang.String> IMMEDIATELY_DOWNED_HOSTS
static final java.util.List<java.lang.String> CONNECTION_ATTEMPTS
private java.lang.String hostname
private int portNumber
private PropertySet propSet
public static java.lang.String getHostConnectedStatus(java.lang.String host)
public static java.lang.String getHostFailedStatus(java.lang.String host)
public static java.lang.String getHostUnknownStatus(java.lang.String host)
public static void flushAllStaticData()
public static void flushConnectionAttempts()
public static void mapHost(java.lang.String alias,
java.lang.String orig)
public static void hangOnRead(java.lang.String hostname)
public static void dontHangOnRead(java.lang.String hostname)
public static void hangOnWrite(java.lang.String hostname)
public static void dontHangOnWrite(java.lang.String hostname)
public static void hangOnConnect(java.lang.String hostname)
public static void dontHangOnConnect(java.lang.String hostname)
public static void downHost(java.lang.String hostname)
public static void dontDownHost(java.lang.String hostname)
public static java.lang.String getHostFromLastConnection()
public static java.lang.String getHostFromPastConnection(int pos)
public static java.util.List<java.lang.String> getHostsFromAllConnections()
public static java.util.List<java.lang.String> getHostsFromLastConnections(int count)
public static boolean isConnected()
public <T extends java.io.Closeable> T connect(java.lang.String host_name,
int port_number,
PropertySet pset,
int loginTimeout)
throws java.io.IOException
SocketFactorycom.mysql.cj.protocol.StandardSocketFactory Implementing classes
are responsible for handling synchronization of this method (if needed).connect in interface SocketFactoryconnect in class StandardSocketFactoryT - result typehost_name - the hostname passed in the URL. It will be a single
hostname, as the driver parses multi-hosts (for failover) and
calls this method for each host connection attempt.port_number - the port number to connect to (if required).pset - properties passed to the driver via the URL and/or properties
instance.loginTimeout - login timeout in millisecondsjava.io.IOException - if an I/O error occursprivate java.net.Socket getNewSocket()
throws java.net.SocketException,
java.io.IOException
java.net.SocketExceptionjava.io.IOExceptionstatic void sleepMillisForProperty(PropertySet pset, PropertyKey name)