code: public SmtpConnectionFactory build() {
      if (session == null) {
        session = Session.getInstance(new Properties());
      }
  
      TransportStrategy transportStrategy = protocol == null ? newSessiontStrategy() : newProtocolStrategy(protocol);
  
      ConnectionStrategy connectionStrategy;
      if (host == null && port == -1 && username == null && password == null) {
        connectionStrategy = newConnectionStrategy();
      } else {
        connectionStrategy = newConnectionStrategy(host, port, username, password);
      }
  
      return new SmtpConnectionFactory(session, transportStrategy, connectionStrategy, defaultTransportListeners);
    }
docs: Build the {@link SmtpConnectionFactory}
  
  @return