ch.qos.logback.core.net

## Interface SocketConnector

All Superinterfaces:
  java.util.concurrent.Callable<java.net.Socket>

All Known Implementing Classes:
  DefaultSocketConnector

    public interface SocketConnector
    extends java.util.concurrent.Callable<java.net.Socket>

A `Runnable` that (re)connects a socket.

An implementation of this interface is responsible for repeatedly attempting to create a socket connection to a remote host.

Author:
  Carl Harris

### Nested Class Summary

Nested Classes
`static interface` `SocketConnector.ExceptionHandler` An exception handler that is notified of all exceptions that occur during the (re)connection process.

### Method Summary

Methods
`java.net.Socket` `call()` Blocks the calling thread until a connection is successfully established.
`void` `setExceptionHandler(SocketConnector.ExceptionHandler exceptionHandler)` Sets the connector's exception handler.
`void` `setSocketFactory(javax.net.SocketFactory socketFactory)` Sets the connector's socket factory.

### Method Detail

#### call

    java.net.Socket call()
                         throws java.lang.InterruptedException

Blocks the calling thread until a connection is successfully established.

Specified by:
  `call` in interface `java.util.concurrent.Callable<java.net.Socket>`
Returns:
  the connected socket
Throws:
  `java.lang.InterruptedException`

#### setExceptionHandler

    void setExceptionHandler(SocketConnector.ExceptionHandler exceptionHandler)

Sets the connector's exception handler.

The handler must be set before the `call()` method is invoked.

Parameters:
  `exceptionHandler` - the handler to set

#### setSocketFactory

    void setSocketFactory(javax.net.SocketFactory socketFactory)

Sets the connector's socket factory.

If no factory is configured that connector will use the platform's default factory.

Parameters:
  `socketFactory` - the factory to set