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.22 by tdb, Fri Mar 16 03:12:42 2001 UTC vs.
Revision 1.24 by ajm, Thu Mar 22 22:07:58 2001 UTC

# Line 21 | Line 21 | import java.text.*;
21   * @author  $Author$
22   * @version $Id$
23   */
24 < public class IRC__Alerter implements PluginAlerter {
24 > public class IRC__Alerter extends Thread implements PluginAlerter {
25  
26   //---FINAL ATTRIBUTES---
27  
# Line 56 | Line 56 | public class IRC__Alerter implements PluginAlerter {
56          _ircbot.setName("client.IRC__Alerter$IRCBot");
57          _ircbot.start();
58          _startTime = System.currentTimeMillis();
59 <        
59 >        this.start();
60          _logger.write(toString(), Logger.SYSINIT, "IRC Alerter started");
61      }
62  
63   //---PUBLIC METHODS---
64  
65 +    public void run() {
66 +        while(_running) {
67 +            try {
68 +                sendAlert((Alert) getQueue().get(getQueueId()));
69 +            } catch (InvalidQueueException e) {
70 +                _logger.write(this.toString(), Logger.ERROR, "Unable to get queue.");
71 +            }
72 +        }
73 +    }
74 +
75      public void sendAlert(Alert alert) {
76          // only send alerts if we're active
77          if(_active) {
# Line 96 | Line 106 | public class IRC__Alerter implements PluginAlerter {
106                  message = StringUtils.replaceText(message, "%value%", alert.getValue());
107                  message = StringUtils.replaceText(message, "%thresholdValue%", alert.getThresholdValue());
108                  message = StringUtils.replaceText(message, "%attributeName%", alert.getAttributeName());
109 <                message = StringUtils.replaceText(message, "%timeTillNextAlert%",  getTimeString(Long.parseLong(alert.getTimeTillNextAlert())));
109 >                message = StringUtils.replaceText(message, "%timeTillNextAlert%",  DateUtils.getTimeString(Long.parseLong(alert.getTimeTillNextAlert())));
110                  message = StringUtils.replaceText(message, "%timeSinceFirstAlert%", timeFirstSince);
111                  message = StringUtils.replaceText(message, "%timeOfFirstAlert%", timeFirstOccured);
112                  
# Line 138 | Line 148 | public class IRC__Alerter implements PluginAlerter {
148  
149   //---PRIVATE METHODS---
150  
151 <    private String getTimeString(long time) {
152 <        String timeString = null;
153 <        if (time >= 60) {
154 <            timeString = (time / 60) + " minute(s)";
155 <        } else if (time >= 3600) {
156 <            timeString = ((time/60) / 60) + " hour(s)";
157 <        } else {
158 <            timeString = time + " second(s)";
151 > //---ACCESSOR/MUTATOR METHODS---
152 >
153 >    protected Queue getQueue() {
154 >        return AlerterManager.getInstance().getQueue();
155 >    }
156 >    
157 >    protected int getQueueId() {
158 >        if (_qID == -1) {
159 >            _qID = getQueue().getQueue();
160 >            _logger.write(toString(), Logger.DEBUG, "Assigned Queue - " + _qID);
161          }
162 <        return timeString;
162 >        return _qID;
163      }
164  
153 //---ACCESSOR/MUTATOR METHODS---
154
165   //---ATTRIBUTES---
166      
167      /**
# Line 190 | Line 200 | public class IRC__Alerter implements PluginAlerter {
200      private long _startTime;
201      
202      /**
203 +     * The running status of the alerter
204 +     */
205 +    private boolean _running = true;
206 +    
207 +    /**
208       * This is the friendly identifier of the
209       * component this class is running in.
210       * eg, a Filter may be called "filter1",
# Line 205 | Line 220 | public class IRC__Alerter implements PluginAlerter {
220       * system logger that is being used.
221       */
222      private Logger _logger = ReferenceManager.getInstance().getLogger();
223 +    
224 +    /**
225 +     * The queue id for this alerters queue in the alert queue
226 +     */
227 +    private int _qID = -1;
228  
229   //---STATIC ATTRIBUTES---
230  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines