code: protected SocketFactory createSocketFactory(InetAddress address,
                                                  int port,
                                                  InetAddress localAddr,
                                                  int localPort,
                                                  long timeout)
      {
          SocketFactory factory;
          factory = new PlainSocketFactory
              (address, port, localAddr, localPort, timeout);
          factory = new PooledSocketFactory(factory);
          factory = new LazySocketFactory(factory);
          return factory;
      }
docs: Create socket factories for newly resolved addresses. Default
  implementation returns a LazySocketFactory wrapping a
  PooledSocketFactory wrapping a PlainSocketFactory.