summaryrefslogtreecommitdiff
path: root/js/src/Ice/Logger.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/Ice/Logger.js')
-rw-r--r--js/src/Ice/Logger.js93
1 files changed, 93 insertions, 0 deletions
diff --git a/js/src/Ice/Logger.js b/js/src/Ice/Logger.js
new file mode 100644
index 00000000000..38ab8d8ee4b
--- /dev/null
+++ b/js/src/Ice/Logger.js
@@ -0,0 +1,93 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+(function(global){
+ var Ice = global.Ice || {};
+
+ require("Ice/Class");
+
+ var Logger = Ice.Class({
+ __init__: function(prefix)
+ {
+ if(prefix !== undefined && prefix.length > 0)
+ {
+ this._prefix = prefix + ": ";
+ }
+ else
+ {
+ this._prefix = "";
+ }
+ },
+ print: function(message)
+ {
+ this.write(message, false);
+ },
+ trace: function(category, message)
+ {
+ var s = [];
+ var d = new Date();
+ s.push("-- ");
+ s.push(this.timestamp());
+ s.push(' ');
+ s.push(this._prefix);
+ s.push(category);
+ s.push(": ");
+ s.push(message);
+ this.write(s.join(""), true);
+ },
+ warning: function(message)
+ {
+ var s = [];
+ var d = new Date();
+ s.push("-! ");
+ s.push(this.timestamp());
+ s.push(' ');
+ s.push(this._prefix);
+ s.push("warning: ");
+ s.push(message);
+ this.write(s.join(""), true);
+ },
+ error: function(message)
+ {
+ var s = [];
+ var d = new Date();
+ s.push("!! ");
+ s.push(this.timestamp());
+ s.push(' ');
+ s.push(this._prefix);
+ s.push("error: ");
+ s.push(message);
+ this.write(s.join(""), true);
+ },
+ cloneWithPrefix: function(prefix)
+ {
+ return new Logger(prefix);
+ },
+ write: function(message, indent)
+ {
+ if(indent)
+ {
+ message = message.replace(/\n/g, "\n ");
+ }
+
+ console.log(message);
+ },
+ timestamp: function()
+ {
+ var d = new Date();
+ var mon = d.getMonth() + 1;
+ mon = mon < 10 ? "0" + mon : mon;
+ var day = d.getDate();
+ day = day < 10 ? "0" + day : day;
+ return mon + "-" + day + "-" + d.getFullYear() + " " + d.toLocaleTimeString() + "." + d.getMilliseconds();
+ }
+ });
+ Ice.Logger = Logger;
+ global.Ice = Ice;
+}(typeof (global) === "undefined" ? window : global));