logback-android/src/main/java/ch/qos/logback/core/net/DefaultSocketConnector.java
public Socket call() throws InterruptedException {
    useDefaultsForMissingFields();
    Socket socket = createSocket();
    while (socket == null && !Thread.currentThread().isInterrupted()) {
      Thread.sleep(delayStrategy.nextDelay());
      socket = createSocket();
    }
    return socket;
  }
public Socket call() throws InterruptedException {
    useDefaultsForMissingFields();
    Socket socket = createSocket();
    while (socket == null && !Thread.currentThread().isInterrupted()) {
      Thread.sleep(delayStrategy.nextDelay());
      socket = createSocket();
    }
    return socket;
  }
Loops until the desired connection is established and returns the resulting connector.