code: public List<MailMessage> findMessages(final MailAccount mailAccount, final Predicate<MailMessage> condition,
  			final long timeoutSeconds) {
  		return findMessages(mailAccount, condition, timeoutSeconds, defaultSleepMillis);
  	}
docs: <p>
  Tries to find messages for the specified mail account applying the specified
  {@code condition} until it times out using the specified {@code timeout} and
  {@link EmailConstants#MAIL_SLEEP_MILLIS}.
  </p>
  <b>Note:</b><br />
  This method uses the specified mail account independently without reservation. If, however,
  the specified mail account has been reserved by any thread (including the current one), an
  {@link IllegalStateException} is thrown. </p>
  
  @param mailAccount
  the mail account
  @param condition
  the condition a message must meet
  @param timeoutSeconds
  the timeout in seconds
  @return an immutable list of mail messages