ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/server/uk/org/iscream/cms/server/client/alerters/EMail__Alerter.java
(Generate patch)

Comparing projects/cms/source/server/uk/org/iscream/cms/server/client/alerters/EMail__Alerter.java (file contents):
Revision 1.7 by tdb, Fri Mar 2 02:46:56 2001 UTC vs.
Revision 1.8 by tdb, Sat Mar 3 01:09:53 2001 UTC

# Line 11 | Line 11 | import java.util.*;
11   import java.io.*;
12  
13   /**
14 < * This Alert sends by e-mail.
14 > * This alerter delivers alerts using e-mail.
15   *
16   * @author  $Author$
17   * @version $Id$
# Line 25 | Line 25 | public class EMail__Alerter implements PluginAlerter {
25       */
26      public final String REVISION = "$Revision$";
27      
28 <    public final String DESC = "Sends alerts by e-mail";
28 >    public final String DESC = "Sends alerts over e-mail.";
29      
30   //---STATIC METHODS---
31  
32   //---CONSTRUCTORS---
33  
34 <    public EMail__Alerter() {
35 <        // get the configuration for this alerter
36 <        Configuration config = ReferenceManager.getInstance().getCM().getConfiguration(_name);
37 <        
38 <        // an integer value
39 <        _level = Integer.parseInt(config.getProperty("Alerter.EMail.level"));
40 <        // a semi-colon seperated list of destination addresses
41 <        _destList = config.getProperty("Alerter.EMail.destList");
42 <        // a single from address
43 <        _sender = config.getProperty("Alerter.EMail.sender");
44 <        // the fqdn of an smtp server
45 <        _smtpServer = config.getProperty("Alerter.EMail.smtpServer");
46 <        // a subject with the following: %level% and %message%
47 <        // eg, "i-scream e-mail alert: level %level%, %message%"
48 <        _subject = config.getProperty("Alerter.EMail.subject");
49 <        // a message body with the following: %level% and %message%
50 <        _message = config.getProperty("Alerter.EMail.message");
51 <        
34 >    public EMail__Alerter() {      
35          _logger.write(toString(), Logger.SYSINIT, "IRC Alerter started");
36      }
37  
38   //---PUBLIC METHODS---
39  
40      public void sendAlert(Alert alert) {
41 +        ConfigurationProxy cp = ConfigurationProxy.getInstance();
42 +        int level = Integer.parseInt(cp.getProperty(_name, "Alerter.EMail.level"));
43          // only send if it's equal (or above) our level
44 <        if(alert.getLevel() >= _level) {
44 >        if(alert.getLevel() >= level) {
45              String alertType = Alert.alerts[alert.getLevel()]+"["+String.valueOf(alert.getLevel())+"]";
46              // sort out the subject
47 <            String subject = _subject;
47 >            String subject = cp.getProperty(_name, "Alerter.EMail.subject");
48              subject = StringUtils.replaceText(subject, "%level%", alertType);
49              subject = StringUtils.replaceText(subject, "%source%", alert.getSource());
50              subject = StringUtils.replaceText(subject, "%value%", alert.getValue());
# Line 67 | Line 52 | public class EMail__Alerter implements PluginAlerter {
52              subject = StringUtils.replaceText(subject, "%attributeName%", alert.getAttributeName());
53              
54              // sort out the message body
55 <            String message = _message;
55 >            String message = cp.getProperty(_name, "Alerter.EMail.message");
56              message = StringUtils.replaceText(message, "%level%", alertType);
57              message = StringUtils.replaceText(message, "%source%", alert.getSource());
58              message = StringUtils.replaceText(message, "%value%", alert.getValue());
# Line 76 | Line 61 | public class EMail__Alerter implements PluginAlerter {
61              
62              try {
63                  // create SMTP message
64 <                Smtp smtp = new Smtp(_smtpServer);
64 >                Smtp smtp = new Smtp(cp.getProperty(_name, "Alerter.EMail.smtpServer"));
65                  // set our sender
66 <                smtp.setSender(_sender);
66 >                smtp.setSender(cp.getProperty(_name, "Alerter.EMail.sender"));
67                  
68                  // set the to list
69 <                StringTokenizer st = new StringTokenizer(_destList, ";");
69 >                StringTokenizer st = new StringTokenizer(cp.getProperty(_name, "Alerter.EMail.destList"), ";");
70                  while (st.hasMoreTokens()) {
71                      smtp.setTo(st.nextToken());
72                  }
# Line 131 | Line 116 | public class EMail__Alerter implements PluginAlerter {
116   //---ACCESSOR/MUTATOR METHODS---
117  
118   //---ATTRIBUTES---
134
135    // an integer value
136    private int _level;
119      
138    // a semi-colon seperated list of destination addresses
139    private String _destList;
140    
141    // a single sender address
142    private String _sender;
143    
144    // the fqdn of an smtp server
145    private String _smtpServer;
146    
147    // a subject with the following: %level% and %message%
148    // eg, "i-scream e-mail alert: level %level%, %message%"
149    private String _subject;
150
151    // a message body with the following: %level% and %message%
152    private String _message;
153
120      /**
121       * This is the friendly identifier of the
122       * component this class is running in.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines