1402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll/******************************************************************************* 2402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * Copyright (c) 2000, 2006 IBM Corporation and others. 3402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * All rights reserved. This program and the accompanying materials 4402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * are made available under the terms of the Eclipse Public License v1.0 5402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * which accompanies this distribution, and is available at 6402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * http://www.eclipse.org/legal/epl-v10.html 7402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * 8402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * Contributors: 9402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * IBM Corporation - initial API and implementation 10402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll *******************************************************************************/ 11402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollpackage org.eclipse.releng; 12402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 13402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll/** 14402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * A Class that sends build related email messages. host, sender, recipient and 15402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * build related information set in monitor.properties 16402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 17402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 18402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollimport javax.activation.DataHandler; 19402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollimport javax.activation.FileDataSource; 20402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollimport javax.mail.*; 21402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollimport javax.mail.internet.*; 22402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 23402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollimport java.io.File; 24402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollimport java.util.StringTokenizer; 25402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollimport java.util.Properties; 26402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 27402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollpublic class Mailer { 28402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 29402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // flag that determines whether or not to send mail 30402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll boolean sendMail = true; 31402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 32402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // the Object that holds the key value pairs in monitor.properties 33402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll private BuildProperties buildProperties; 34402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 35402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll //convert the comma separated list of email addressed into an array of Address objects 36402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll private Address[] getAddresses(String recipientList) { 37402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll int i = 0; 38402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll StringTokenizer recipients = new StringTokenizer(recipientList, ","); 39402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Address[] addresses = new Address[recipients.countTokens()]; 40402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 41402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll while (recipients.hasMoreTokens()) { 42402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll try { 43402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll addresses[i++] = new InternetAddress(recipients.nextToken()); 44402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } catch (AddressException e) { 45402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll System.out.println("Unable to create address"); 46402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 47402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 48402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll return addresses; 49402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 50402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 51402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public Mailer(){ 52402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll this("monitor.properties"); 53402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 54402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public Mailer(String buildPropertiesPath){ 55402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll buildProperties = new BuildProperties(buildPropertiesPath); 56402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll if (buildProperties.getHost().equals("")||buildProperties.getSender().equals("")||buildProperties.getToRecipientList().equals("")){ 57402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll sendMail=false; 58402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 59402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 60402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 61402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 62402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public static void main(String args[]) { 63402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Mailer mailer=new Mailer(args[0]); 64402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll mailer.sendTextMessage(args[1],args[2]); 65402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 66402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 67402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public void sendMessage(String aSubject, String aMessage) { 68402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll if (aSubject == null || aMessage == null || sendMail == false){ 69402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll printEmailFailureNotice(aSubject,aMessage); 70402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 71402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 72402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Get system properties 73402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Properties props = System.getProperties(); 74402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 75402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Setup mail server 76402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll props.put("mail.smtp.host", buildProperties.getHost()); 77402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 78402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Get session 79402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Session session = Session.getDefaultInstance(props, null); 80402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 81402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Define message 82402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll MimeMessage message = new MimeMessage(session); 83402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 84402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll try { 85402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 86402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Set the from address 87402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.setFrom(new InternetAddress(buildProperties.getSender())); 88402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 89402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Set the to address 90402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.addRecipients(Message.RecipientType.TO, getAddresses(buildProperties.getToRecipientList())); 91402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 92402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Set the subject 93402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.setSubject(buildProperties.getBuildSubjectPrefix()+ 94402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll "Build " 95402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + buildProperties.getBuildid() 96402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + " (Timestamp: " 97402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + buildProperties.getTimestamp() 98402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + "):" 99402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + aSubject); 100402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 101402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Set the content 102402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.setText( 103402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll "Build " 104402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + buildProperties.getBuildid() 105402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + " (Timestamp: " 106402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + buildProperties.getTimestamp() 107402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + "): " 108402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + aMessage); 109402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 110402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Send message 111402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Transport.send(message); 112402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 113402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } catch (AddressException e) { 114402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll e.printStackTrace(); 115402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } catch (MessagingException e) { 116402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll e.printStackTrace(); 117402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 118402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 119402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 120402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public void sendTextMessage(String aSubject, String aMessage) { 121402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll if (aSubject == null || aMessage == null || sendMail == false){ 122402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll printEmailFailureNotice(aSubject,aMessage); 123402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 124402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 125402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Get system properties 126402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Properties props = System.getProperties(); 127402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 128402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Setup mail server 129402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll props.put("mail.smtp.host", buildProperties.getHost()); 130402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 131402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Get session 132402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Session session = Session.getDefaultInstance(props, null); 133402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 134402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Define message 135402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll MimeMessage message = new MimeMessage(session); 136402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 137402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll try { 138402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 139402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Set the from address 140402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.setFrom(new InternetAddress(buildProperties.getSender())); 141402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 142402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Set the to address 143402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.addRecipients(Message.RecipientType.BCC, getAddresses(buildProperties.getTextRecipientList())); 144402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 145402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Set the subject 146402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.setSubject(buildProperties.getBuildSubjectPrefix()+ 147402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll "Build " 148402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + buildProperties.getBuildid() 149402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + ":" 150402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + aSubject); 151402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 152402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Set the content 153402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.setText(aMessage); 154402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 155402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Send message 156402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Transport.send(message); 157402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 158402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } catch (AddressException e) { 159402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll e.printStackTrace(); 160402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } catch (MessagingException e) { 161402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll e.printStackTrace(); 162402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 163402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 164402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 165402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public void sendMultiPartMessage( 166402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // a method for sending mail with attachments 167402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll String aSubject, String aMessage, String[] attachments) { 168402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll if (aSubject == null || aMessage == null || sendMail == false){ 169402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll printEmailFailureNotice(aSubject,aMessage); 170402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 171402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 172402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Get system properties 173402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Properties props = System.getProperties(); 174402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 175402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Setup mail server 176402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll props.put("mail.smtp.host", buildProperties.getHost()); 177402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 178402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Get session 179402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Session session = Session.getDefaultInstance(props, null); 180402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 181402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Define message 182402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll MimeMessage message = new MimeMessage(session); 183402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 184402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Multipart mp = new MimeMultipart(); 185402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 186402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll try { 187402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Set the from address 188402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.setFrom(new InternetAddress(buildProperties.getSender())); 189402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 190402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Set the to address 191402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.addRecipients(Message.RecipientType.TO, getAddresses(buildProperties.getToRecipientList())); 192402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 193402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // Set the subject 194402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.setSubject(buildProperties.getBuildSubjectPrefix()+ 195402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll "Build " 196402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + buildProperties.getBuildid() 197402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + " (Timestamp: " 198402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + buildProperties.getTimestamp() 199402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + "):" 200402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + aSubject); 201402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 202402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // create and fill the first message part 203402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll MimeBodyPart part = new MimeBodyPart(); 204402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll part.setText( 205402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll "Build " 206402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + buildProperties.getBuildid() 207402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + " (Timestamp: " 208402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + buildProperties.getTimestamp() 209402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + "): " 210402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll + aMessage); 211402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll mp.addBodyPart(part); 212402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 213402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll //for each attachment create new message part 214402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll for (int i = 0; i < attachments.length; i++) { 215402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll MimeBodyPart attachmentPart = new MimeBodyPart(); 216402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // attach the file to the message 217402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll FileDataSource attachment = new FileDataSource(attachments[i]); 218402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll attachmentPart.setDataHandler(new DataHandler(attachment)); 219402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll File attachmentFile=new File(attachments[i]); 220402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll attachmentPart.setFileName(attachmentFile.getParent()+"-"+attachmentFile.getName()); 221402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll mp.addBodyPart(attachmentPart); 222402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 223402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 224402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // add the Multipart to the message 225402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll message.setContent(mp); 226402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 227402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll Transport.send(message); 228402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 229402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } catch (AddressException e) { 230402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } catch (MessagingException e) { 231402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 232402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 233402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 234402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll private void printEmailFailureNotice(String aSubject, String aMessage){ 235402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll System.out.println("Email failed. Settings:"); 236402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll System.out.println("\nhost="+buildProperties.getHost()+"\nsender="+buildProperties.getSender()+"\nrecipients="+buildProperties.getToRecipientList()); 237402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll System.out.println("\nSubject="+aSubject+"\nMessage="+aMessage); 238402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll return; 239402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 240402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 241402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll /** 242402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * Returns the buildProperties. 243402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @return BuildProperties 244402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 245402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public BuildProperties getBuildProperties() { 246402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll return buildProperties; 247402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 248402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 249402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll /** 250402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * Sets the buildProperties. 251402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @param buildProperties The buildProperties to set 252402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 253402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public void setBuildProperties(BuildProperties buildProperties) { 254402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll this.buildProperties = buildProperties; 255402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 256402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 257402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll} 258