001: /**
002: * JOnAS: Java(TM) Open Application Server
003: * Copyright (C) 2005 Bull S.A.
004: * Contact: jonas-team@objectweb.org
005: *
006: * This library is free software; you can redistribute it and/or
007: * modify it under the terms of the GNU Lesser General Public
008: * License as published by the Free Software Foundation; either
009: * version 2.1 of the License, or any later version.
010: *
011: * This library is distributed in the hope that it will be useful,
012: * but WITHOUT ANY WARRANTY; without even the implied warranty of
013: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
014: * Lesser General Public License for more details.
015: *
016: * You should have received a copy of the GNU Lesser General Public
017: * License along with this library; if not, write to the Free Software
018: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
019: * USA
020: *
021: * Initial developer: Benoit Pelletier
022: * --------------------------------------------------------------------------
023: * $Id: MailCluster.java 6896 2005-06-07 08:21:28Z pelletib $
024: * --------------------------------------------------------------------------
025: */package org.objectweb.jonas.ant.cluster;
026:
027: import java.io.File;
028:
029: import org.objectweb.jonas.ant.jonasbase.Mail;
030:
031: /**
032: * Define MailCluster task
033: * @author Benoit Pelletier
034: */
035: public class MailCluster extends ClusterTasks {
036:
037: /**
038: * Info for the logger
039: */
040: private static final String INFO = "[MailCluster] ";
041:
042: /**
043: * Type of factory (Session or MimePartDataSource)
044: */
045: private String type = null;
046:
047: /**
048: * Name of the factory
049: */
050: private String name = null;
051:
052: /**
053: * Recipient (TO) of MimePartDataSource factory
054: */
055: private String mailTo = null;
056:
057: /**
058: * Subject of MimePartDataSource factory
059: */
060: private String subject = null;
061:
062: /**
063: * Sets the recipient (MimePartDataSource)
064: * @param mailTo recipient.
065: */
066: public void setMailTo(String mailTo) {
067: this .mailTo = mailTo;
068: }
069:
070: /**
071: * Sets the name
072: * @param name name of the factory
073: */
074: public void setName(String name) {
075: this .name = name;
076: }
077:
078: /**
079: * Sets the subject (MimePartDataSource)
080: * @param subject of the mail
081: */
082: public void setSubject(String subject) {
083: this .subject = subject;
084: }
085:
086: /**
087: * Sets the type of factory
088: * @param type of factory
089: */
090: public void setType(String type) {
091: this .type = type;
092: }
093:
094: /**
095: * Default constructor
096: */
097: public MailCluster() {
098: super ();
099: }
100:
101: /**
102: * Generates the mail tasks for each JOnAS's instances
103: */
104: public void generatesTasks() {
105:
106: for (int i = getDestDirSuffixIndFirst(); i <= getDestDirSuffixIndLast(); i++) {
107:
108: String destDir = getDestDir(getDestDirPrefix(), i);
109:
110: // creation of the Mail task
111: Mail mail = new Mail();
112:
113: log(INFO + "tasks generation for " + destDir);
114:
115: mail.setMailTo(mailTo);
116: mail.setName(name);
117: mail.setSubject(subject);
118: mail.setType(type);
119:
120: mail.setDestDir(new File(destDir));
121:
122: addTask(mail);
123:
124: }
125: }
126: }
|