aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/email/PlainMailer.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/email/PlainMailer.java')
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/email/PlainMailer.java177
1 files changed, 0 insertions, 177 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/email/PlainMailer.java b/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/email/PlainMailer.java
deleted file mode 100644
index 20524ac3..00000000
--- a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/email/PlainMailer.java
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.apache.tools.ant.taskdefs.email;
-
-import java.io.BufferedInputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.io.PrintStream;
-import java.util.Enumeration;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Project;
-import org.apache.tools.mail.MailMessage;
-
-/**
- * Class responsible for sending email through raw protocol methods.
- *
- * @since Ant 1.5
- */
-class PlainMailer extends Mailer {
- /**
- * Sends the email using the apache MailMessage class.
- *
- * @see org.apache.tools.mail.MailMessage
- */
- public void send() {
- try {
- MailMessage mailMessage = new MailMessage(host, port);
-
- mailMessage.from(from.toString());
-
- Enumeration e;
- boolean atLeastOneRcptReached = false;
-
- e = replyToList.elements();
- while (e.hasMoreElements()) {
- mailMessage.replyto(e.nextElement().toString());
- }
- e = toList.elements();
- while (e.hasMoreElements()) {
- String to = e.nextElement().toString();
- try {
- mailMessage.to(to);
- atLeastOneRcptReached = true;
- } catch (IOException ex) {
- badRecipient(to, ex);
- }
- }
- e = ccList.elements();
- while (e.hasMoreElements()) {
- String to = e.nextElement().toString();
- try {
- mailMessage.cc(to);
- atLeastOneRcptReached = true;
- } catch (IOException ex) {
- badRecipient(to, ex);
- }
- }
- e = bccList.elements();
- while (e.hasMoreElements()) {
- String to = e.nextElement().toString();
- try {
- mailMessage.bcc(to);
- atLeastOneRcptReached = true;
- } catch (IOException ex) {
- badRecipient(to, ex);
- }
- }
- if (!atLeastOneRcptReached) {
- throw new BuildException("Couldn't reach any recipient");
- }
- if (subject != null) {
- mailMessage.setSubject(subject);
- }
- mailMessage.setHeader("Date", getDate());
- if (message.getCharset() != null) {
- mailMessage.setHeader("Content-Type", message.getMimeType()
- + "; charset=\"" + message.getCharset() + "\"");
- } else {
- mailMessage.setHeader("Content-Type", message.getMimeType());
- }
- if (headers != null) {
- e = headers.elements();
- while (e.hasMoreElements()) {
- Header h = (Header) e.nextElement();
- mailMessage.setHeader(h.getName(), h.getValue());
- }
- }
- PrintStream out = mailMessage.getPrintStream();
- message.print(out);
-
- e = files.elements();
- while (e.hasMoreElements()) {
- attach((File) e.nextElement(), out);
- }
- mailMessage.sendAndClose();
- } catch (IOException ioe) {
- throw new BuildException("IO error sending mail", ioe);
- }
-
- }
-
- /**
- * Attaches a file to this email
- *
- * @param file The file to attache
- * @param out The message stream to add to
- * @throws IOException if errors occur
- */
- protected void attach(File file, PrintStream out)
- throws IOException {
- if (!file.exists() || !file.canRead()) {
- throw new BuildException("File \"" + file.getName()
- + "\" does not exist or is not "
- + "readable.");
- }
-
- if (includeFileNames) {
- out.println();
-
- String filename = file.getName();
- int filenamelength = filename.length();
-
- out.println(filename);
- for (int star = 0; star < filenamelength; star++) {
- out.print('=');
- }
- out.println();
- }
-
- int length;
- final int maxBuf = 1024;
- byte[] buf = new byte[maxBuf];
- FileInputStream finstr = new FileInputStream(file);
-
- try {
- BufferedInputStream in = new BufferedInputStream(finstr, buf.length);
-
- while ((length = in.read(buf)) != -1) {
- out.write(buf, 0, length);
- }
- } finally {
- finstr.close();
- }
- }
-
- private void badRecipient(String rcpt, IOException reason) {
- String msg = "Failed to send mail to " + rcpt;
- if (shouldIgnoreInvalidRecipients()) {
- msg += " because of :" + reason.getMessage();
- if (task != null) {
- task.log(msg, Project.MSG_WARN);
- } else {
- System.err.println(msg);
- }
- } else {
- throw new BuildException(msg, reason);
- }
- }
-}
-