code: public void addMailHost(
          String hostname,
          String port,
          String order,
          String protocol,
          String security,
          String username,
          String password) {
  
          Integer thePort;
          try {
              thePort = Integer.valueOf(port);
          } catch (Throwable t) {
              thePort = Integer.valueOf(25);
          }
          m_orderDefault += 10;
          Integer theOrder;
          try {
              theOrder = Integer.valueOf(order);
              if (theOrder.intValue() > m_orderDefault) {
                  m_orderDefault = theOrder.intValue();
              }
          } catch (Throwable t) {
              // valueOf: use jdk int cache if possible and not new operator:
              theOrder = Integer.valueOf(m_orderDefault);
          }
          CmsMailHost host = new CmsMailHost(hostname, thePort, theOrder, protocol, security, username, password);
          m_mailHosts.add(host);
          if (CmsLog.INIT.isInfoEnabled()) {
              CmsLog.INIT.info(Messages.get().getBundle().key(Messages.LOG_ADD_HOST_1, host));
          }
          Collections.sort(m_mailHosts);
      }
docs: Adds a new mail host to the internal list of mail hosts.<p>
  
  @param hostname the name of the mail host
  @param port the port of the mail host
  @param order the order in which the host is tried
  @param protocol the protocol to use (default "smtp")
  @param security the security mode
  @param username the user name to use for authentication
  @param password the password to use for authentication