summaryrefslogtreecommitdiffstats
path: root/webclients/novnc/core/util/logging.js
diff options
context:
space:
mode:
Diffstat (limited to 'webclients/novnc/core/util/logging.js')
-rw-r--r--webclients/novnc/core/util/logging.js51
1 files changed, 51 insertions, 0 deletions
diff --git a/webclients/novnc/core/util/logging.js b/webclients/novnc/core/util/logging.js
new file mode 100644
index 0000000..bcff16a
--- /dev/null
+++ b/webclients/novnc/core/util/logging.js
@@ -0,0 +1,51 @@
+/*
+ * noVNC: HTML5 VNC client
+ * Copyright (C) 2012 Joel Martin
+ * Licensed under MPL 2.0 (see LICENSE.txt)
+ *
+ * See README.md for usage and integration instructions.
+ */
+
+/*
+ * Logging/debug routines
+ */
+
+var _log_level = 'warn';
+
+var Debug = function (msg) {};
+var Info = function (msg) {};
+var Warn = function (msg) {};
+var Error = function (msg) {};
+
+export function init_logging (level) {
+ if (typeof level === 'undefined') {
+ level = _log_level;
+ } else {
+ _log_level = level;
+ }
+
+ Debug = Info = Warn = Error = function (msg) {};
+ if (typeof window.console !== "undefined") {
+ switch (level) {
+ case 'debug':
+ Debug = console.debug.bind(window.console);
+ case 'info':
+ Info = console.info.bind(window.console);
+ case 'warn':
+ Warn = console.warn.bind(window.console);
+ case 'error':
+ Error = console.error.bind(window.console);
+ case 'none':
+ break;
+ default:
+ throw new Error("invalid logging type '" + level + "'");
+ }
+ }
+};
+export function get_logging () {
+ return _log_level;
+};
+export { Debug, Info, Warn, Error };
+
+// Initialize logging level
+init_logging();