code: public String determineVirtualHost() {
  		if (CollectionUtils.isEmpty(this.parsedAddresses)) {
  			return getVirtualHost();
  		}
  		Address address = this.parsedAddresses.get(0);
  		return (address.virtualHost != null) ? address.virtualHost : getVirtualHost();
  	}
docs: If addresses have been set and the first address has a virtual host it is returned.
  Otherwise returns the result of calling {@code getVirtualHost()}.
  @return the virtual host or {@code null}
  @see #setAddresses(String)
  @see #getVirtualHost()