Annotation of kupuMPIWG/common/kupuloggers.js, revision 1.1.1.1

1.1       dwinter     1: /*****************************************************************************
                      2:  *
                      3:  * Copyright (c) 2003-2005 Kupu Contributors. All rights reserved.
                      4:  *
                      5:  * This software is distributed under the terms of the Kupu
                      6:  * License. See LICENSE.txt for license text. For a list of Kupu
                      7:  * Contributors see CREDITS.txt.
                      8:  *
                      9:  *****************************************************************************/
                     10: 
                     11: // $Id: kupuloggers.js 9879 2005-03-18 12:04:00Z yuppie $
                     12: 
                     13: 
                     14: //----------------------------------------------------------------------------
                     15: // Loggers
                     16: //
                     17: //  Loggers are pretty simple classes, that should have 1 method, called 
                     18: //  'log'. This is called with 2 arguments, the first one is the message to
                     19: //  log and the second is the severity, which can be 0 or some other false
                     20: //  value for debug messages, 1 for warnings and 2 for errors (the loggers
                     21: //  are allowed to raise an exception if that happens).
                     22: //
                     23: //----------------------------------------------------------------------------
                     24: 
                     25: function DebugLogger() {
                     26:     /* Alert all messages */
                     27:     
                     28:     this.log = function(message, severity) {
                     29:         /* log a message */
                     30:         if (severity > 1) {
                     31:             alert("Error: " + message);
                     32:         } else if (severity == 1) {
                     33:             alert("Warning: " + message);
                     34:         } else {
                     35:             alert("Log message: " + message);
                     36:         }
                     37:     };
                     38: }
                     39: 
                     40: function PlainLogger(debugelid, maxlength) {
                     41:     /* writes messages to a debug tool and throws errors */
                     42: 
                     43:     this.debugel = getFromSelector(debugelid);
                     44:     this.maxlength = maxlength;
                     45:     
                     46:     this.log = function(message, severity) {
                     47:         /* log a message */
                     48:         if (severity > 1) {
                     49:             throw message;
                     50:         } else {
                     51:             if (this.maxlength) {
                     52:                 if (this.debugel.childNodes.length > this.maxlength - 1) {
                     53:                     this.debugel.removeChild(this.debugel.childNodes[0]);
                     54:                 }
                     55:             }
                     56:             var now = new Date();
                     57:             var time = now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds();
                     58:             
                     59:             var div = document.createElement('div');
                     60:             var text = document.createTextNode(time + ' - ' + message);
                     61:             div.appendChild(text);
                     62:             this.debugel.appendChild(div);
                     63:         }
                     64:     };
                     65: }
                     66: 
                     67: function DummyLogger() {
                     68:     this.log = function(message, severity) {
                     69:         if (severity > 1) {
                     70:             throw message;
                     71:         }
                     72:     };
                     73: };

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>