/// <reference path="./IPlugin.ts" /> /// <reference path="./PluginManager.ts" /> /// <reference path="../debug.ts" /> var econda; (function (econda) { var tracking; (function (tracking) { var TrackingPluginManager = econda.tracking.PluginManager; /** * Writes all tracking requests to browser console * * @class econda.tracking.DebugLogger */ var DebugLogger = (function () { function DebugLogger() { } /** * Get singleton instance of tracking listener. * @static */ DebugLogger.getInstance = function () { if (DebugLogger._instance === null) { DebugLogger._instance = new DebugLogger(); } return DebugLogger._instance; }; /** * Called on each tracking request */ DebugLogger.prototype.onRequest = function (emosProperties, cfg) { econda.debug.log('Tracking request', emosProperties, cfg); }; /** * Register instance of debug logger at tracking plug-in manager * @static */ DebugLogger.enable = function () { TrackingPluginManager.registerPlugin(DebugLogger.getInstance()); }; /** * Unregister debug logger at tracking plug-in manager * @static */ DebugLogger.disable = function () { TrackingPluginManager.unregisterPlugin(DebugLogger.getInstance()); }; DebugLogger._instance = null; return DebugLogger; }()); tracking.DebugLogger = DebugLogger; // auto enable tracking for events if ((typeof econdaConfig.trackingLogRequests !== 'undefined' && econdaConfig.trackingLogRequests == true) || (typeof econdaConfig.trackingLogRequests === 'undefined' && econdaConfig.debug == true)) { DebugLogger.enable(); } })(tracking = econda.tracking || (econda.tracking = {})); })(econda || (econda = {}));