You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by pm...@apache.org on 2012/09/26 16:25:43 UTC
js commit: [ios] route console methods to original console
Updated Branches:
refs/heads/master 05cffae81 -> d581fc913
[ios] route console methods to original console
Cordova's console.log does not log to remote web-inspector
https://issues.apache.org/jira/browse/CB-1539
The code was only routing console methods to the original
console if they did NOT match the current level. Change
to ALWAYS call the original console methods. Made a little
cleaner and safer as well.
Project: http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/commit/d581fc91
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/tree/d581fc91
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/diff/d581fc91
Branch: refs/heads/master
Commit: d581fc913c974f3734aee8d0fda2d2f12afadd97
Parents: 05cffae
Author: Patrick Mueller <pm...@apache.org>
Authored: Wed Sep 26 09:21:20 2012 -0400
Committer: Patrick Mueller <pm...@apache.org>
Committed: Wed Sep 26 09:21:20 2012 -0400
----------------------------------------------------------------------
lib/ios/plugin/ios/console.js | 31 ++++++++++++++++++++-----------
1 files changed, 20 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/blob/d581fc91/lib/ios/plugin/ios/console.js
----------------------------------------------------------------------
diff --git a/lib/ios/plugin/ios/console.js b/lib/ios/plugin/ios/console.js
index 6ec196d..98857c6 100644
--- a/lib/ios/plugin/ios/console.js
+++ b/lib/ios/plugin/ios/console.js
@@ -26,7 +26,6 @@ var exec = require('cordova/exec');
* @constructor
*/
var DebugConsole = function() {
- this.winConsole = window.console;
this.logLevel = DebugConsole.INFO_LEVEL;
};
@@ -41,7 +40,10 @@ DebugConsole.prototype.setLevel = function(level) {
this.logLevel = level;
};
-var stringify = function(message) {
+/**
+ * create a nice string for an object
+ */
+function stringify(message) {
try {
if (typeof message === "object" && JSON && JSON.stringify) {
try {
@@ -59,16 +61,25 @@ var stringify = function(message) {
};
/**
+ * remember the original console and it's methods
+ */
+var origConsole = window.console || {}
+
+var origConsole_log = origConsole ? origConsole.log : function(){}
+var origConsole_warn = origConsole ? origConsole.warn : function(){}
+var origConsole_error = origConsole ? origConsole.error : function(){}
+
+
+/**
* Print a normal log message to the console
* @param {Object|String} message Message or object to print to the console
*/
DebugConsole.prototype.log = function(message) {
+ origConsole_log.apply(origConsole, arguments)
+
if (this.logLevel <= DebugConsole.INFO_LEVEL) {
exec(null, null, 'Debug Console', 'log', [ stringify(message), { logLevel: 'INFO' } ]);
}
- else if (this.winConsole && this.winConsole.log) {
- this.winConsole.log(message);
- }
};
/**
@@ -76,12 +87,11 @@ DebugConsole.prototype.log = function(message) {
* @param {Object|String} message Message or object to print to the console
*/
DebugConsole.prototype.warn = function(message) {
+ origConsole_warn.apply(origConsole, arguments)
+
if (this.logLevel <= DebugConsole.WARN_LEVEL) {
exec(null, null, 'Debug Console', 'log', [ stringify(message), { logLevel: 'WARN' } ]);
}
- else if (this.winConsole && this.winConsole.warn) {
- this.winConsole.warn(message);
- }
};
/**
@@ -89,12 +99,11 @@ DebugConsole.prototype.warn = function(message) {
* @param {Object|String} message Message or object to print to the console
*/
DebugConsole.prototype.error = function(message) {
+ origConsole_error.apply(origConsole, arguments)
+
if (this.logLevel <= DebugConsole.ERROR_LEVEL) {
exec(null, null, 'Debug Console', 'log', [ stringify(message), { logLevel: 'ERROR' } ]);
}
- else if (this.winConsole && this.winConsole.error){
- this.winConsole.error(message);
- }
};
module.exports = new DebugConsole();