/* * Copyright 2006 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.wamblee.crawler.kiss.notification; import java.util.Properties; import javax.mail.Session; import org.apache.commons.mail.Email; import org.apache.commons.mail.EmailException; /** * Mail server. * * @author Erik Brakkee */ public class MailServer { private String _host; private int _port; private String _username; private String _password; /** * Constructs the mail server. * * @param aHost * Host name of the SMTP server. * @param aPort * Port name of the SMTP server. * @param aUsername * Username to use for authentication or null if no * authentication is required. * @param aPassword * Password to use for authentication or null if no authenticatio * is required. */ public MailServer(String aHost, int aPort, String aUsername, String aPassword) { _host = aHost; _port = aPort; _username = aUsername; _password = aPassword; } /** * Sends an e-mail. * * @param aMail * Mail to send. * @throws EmailException * In case of problems sending the mail. */ public void send(Email aMail) throws EmailException { Properties props = new Properties(); props.put("mail.transport.protocol", "smtp"); props.put("mail.smtp.host", _host); props.put("mail.smtp.port", "" + _port); Session mailSession = Session.getInstance(props, new UsernamePasswordAuthenticator(_username, _password)); aMail.setMailSession(mailSession); aMail.send(); } }