1 var Ozone = Ozone || {}; 2 3 /** 4 * @class 5 * @description Provides functions to log messages and objects 6 * @Ozone.log 7 * 8 */ 9 /* 10 * The only function that can be called from gadgets is Ozone.log.gadgetLog 11 */ 12 Ozone.log = { 13 14 }; 15 16 Ozone.log.logEnabled = false; 17 18 Ozone.log.defaultLogger = null; 19 Ozone.log.defaultAppender = null; 20 21 Ozone.log.version = Ozone.version.owfversion + Ozone.version.logging; 22 23 /** 24 * @Ozone.log.getLogger 25 * @description Get a logger by name, if the logger has not already been created it will be created 26 * @param {String} loggerName 27 */ 28 Ozone.log.getLogger = function(loggerName) { 29 return log4javascript.getLogger(loggerName); 30 }; 31 32 /** 33 * @Ozone.log.setEnabled 34 * @description Enable/Disable logging for the OWF application 35 * @param {Boolean} enabled true will enable logging false will disable 36 */ 37 Ozone.log.setEnabled = function(enabled){ 38 log4javascript.setEnabled(enabled); 39 }; 40 41 /** 42 * @Ozone.log.getDefaultLogger 43 * @description Get OWF's default logger 44 */ 45 //The default logger cannot be used from gadgets 46 Ozone.log.getDefaultLogger = function() { 47 if (!Ozone.log.defaultLogger) { 48 49 50 var defaultLoggerName = "[ozonedefault]"; 51 52 Ozone.log.defaultLogger = Ozone.log.getLogger(defaultLoggerName); 53 Ozone.log.defaultAppender = new log4javascript.PopUpAppender(); 54 Ozone.log.defaultAppender.setUseOldPopUp(true); 55 Ozone.log.defaultAppender.setComplainAboutPopUpBlocking(false); 56 // change the logging level here, for example: 57 // Ozone.log.defaultAppender.setThreshold(log4javascript.Level.ERROR); 58 Ozone.log.defaultAppender.setThreshold(log4javascript.Level.OFF); 59 log4javascript.getRootLogger().addAppender(Ozone.log.defaultAppender); 60 //Ozone.log.defaultAppender.setInitiallyMinimized(true); 61 62 return Ozone.log.defaultLogger; 63 } 64 65 return Ozone.log.defaultLogger; 66 }; 67 68 /** 69 * @description Launch the log window pop-up, this will re-launch the window in the event 70 * it has been closed 71 */ 72 Ozone.log.launchPopupAppender = function() { 73 74 Ozone.log.defaultAppender.show(); 75 76 Ozone.log.getDefaultLogger().debug("Logger Window Lauched"); 77 }; 78 79 80 /* 81 * Log messages from widgets 82 * @param {Object} message 83 */ 84 Ozone.log.widgetLog = function() { 85 gadgets.rpc.call('..', 'Ozone.log',null, arguments); 86 }; 87 88 89 if (typeof(Ext) != "undefined") { 90 Ext.onReady(function(){ 91 gadgets.rpc.register('Ozone.log', function(args){ 92 var logger = Ozone.log.getDefaultLogger(); 93 logger.debug.apply(logger, args); 94 }); 95 }); 96 } 97