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/IRC__Alerter.java
(Generate patch)

Comparing projects/cms/source/server/uk/org/iscream/cms/server/client/alerters/IRC__Alerter.java (file contents):
Revision 1.16 by tdb, Mon Mar 5 23:12:43 2001 UTC vs.
Revision 1.20 by tdb, Wed Mar 14 23:25:29 2001 UTC

# Line 1 | Line 1
1   //---PACKAGE DECLARATION---
2 < package uk.ac.ukc.iscream.client.alerters;
2 > package uk.org.iscream.client.alerters;
3  
4   //---IMPORTS---
5 < import uk.ac.ukc.iscream.client.*;
6 < import uk.ac.ukc.iscream.core.*;
7 < import uk.ac.ukc.iscream.util.*;
8 < import uk.ac.ukc.iscream.componentmanager.*;
5 > import uk.org.iscream.client.*;
6 > import uk.org.iscream.core.*;
7 > import uk.org.iscream.util.*;
8 > import uk.org.iscream.componentmanager.*;
9  
10   import java.io.*;
11   import java.net.*;
# Line 52 | Line 52 | public class IRC__Alerter implements PluginAlerter {
52                          
53          // connect to the IRC server
54          _ircbot = new IRCBot();
55 +        // set it's name and start it
56 +        _ircbot.setName("client.IRC__Alerter$IRCBot");
57          _ircbot.start();
58          _startTime = System.currentTimeMillis();
59          
# Line 77 | Line 79 | public class IRC__Alerter implements PluginAlerter {
79              if(((alert.getLevel() == 0) && (alert.getLastLevel() >= level)) || (alert.getLevel() >= level)) {
80                  String alertType = Alert.alertLevels[alert.getLevel()];
81                  String thresholdType = Alert.thresholdLevels[alert.getThreshold()];
82 +                String timeFirstSince = DateUtils.formatTime(System.currentTimeMillis() - alert.getInitialAlertTime(), "%DAYS% days, %HOURS% hours, %MINS% mins, and %SECS% secs");
83 +                String timeFirstOccured = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, Locale.UK).format(new Date(alert.getInitialAlertTime()));
84                  // sort out the message              
85                  String message;
86                  try {
# Line 93 | Line 97 | public class IRC__Alerter implements PluginAlerter {
97                  message = StringUtils.replaceText(message, "%thresholdValue%", alert.getThresholdValue());
98                  message = StringUtils.replaceText(message, "%attributeName%", alert.getAttributeName());
99                  message = StringUtils.replaceText(message, "%timeTillNextAlert%",  getTimeString(Long.parseLong(alert.getTimeTillNextAlert())));
100 +                message = StringUtils.replaceText(message, "%timeSinceFirstAlert%", timeFirstSince);
101 +                message = StringUtils.replaceText(message, "%timeOfFirstAlert%", timeFirstOccured);
102                  
103                  // send the message
104                  _logger.write(toString(), Logger.DEBUG, "Sending " + _name + " at "+ alertType + " level");
# Line 102 | Line 108 | public class IRC__Alerter implements PluginAlerter {
108                  _alertCount ++;
109              }
110          }
111 +        else {
112 +            _ignoredCount ++;
113 +        }
114      }
115  
116      /**
117       * Overrides the {@link java.lang.Object#toString() Object.toString()}
118       * method to provide clean logging (every class should have this).
119       *
120 <     * This uses the uk.ac.ukc.iscream.util.NameFormat class
120 >     * This uses the uk.org.iscream.util.NameFormat class
121       * to format the toString()
122       *
123       * @return the name of this class and its CVS revision
# Line 168 | Line 177 | public class IRC__Alerter implements PluginAlerter {
177      /**
178       * Number of alerts sent
179       */
180 <    private long _alertCount = 0;
180 >    private int _alertCount = 0;
181      
182      /**
183 +     * Number of alerts ignored when in "stopped" mode
184 +     */
185 +    private int _ignoredCount = 0;
186 +    
187 +    /**
188       * Time of IRCBot startup
189       */
190      private long _startTime;
# Line 430 | Line 444 | public class IRC__Alerter implements PluginAlerter {
444           * Overrides the {@link java.lang.Object#toString() Object.toString()}
445           * method to provide clean logging (every class should have this).
446           *
447 <         * This uses the uk.ac.ukc.iscream.util.NameFormat class
447 >         * This uses the uk.org.iscream.util.NameFormat class
448           * to format the toString()
449           *
450           * @return the name of this class and its CVS revision
# Line 551 | Line 565 | public class IRC__Alerter implements PluginAlerter {
565                      sendPrivMsg(getMsgSender(line), helpCommand);
566                  }
567                  else if(message.indexOf(statCommand)!=-1) {
568 <                    sendMsg(getMsgSender(line)+", I have sent a total of "+_alertCount+" alerts!");
568 >                    sendMsg(getMsgSender(line)+", I have sent a total of "+_alertCount+" alerts, and ignored a total of "+_ignoredCount+"!");
569                  }
570                  else if(message.indexOf(uptimeCommand)!=-1) {
571                      long uptime = (System.currentTimeMillis() - _startTime) / 1000;
572                      String uptimeText = DateUtils.formatTime(uptime, "%DAYS% days, %HOURS% hours, %MINS% mins, and %SECS% secs");
573                      sendMsg(getMsgSender(line)+", I have been running for "+uptimeText);
574 +                }
575 +                else if(message.indexOf("ping")!=-1) {
576 +                    sendMsg("pong");
577                  }
578                  else if(message.indexOf("do a jibble dance")!=-1) {
579                      // little joke :)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines