You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by pu...@apache.org on 2014/10/02 01:33:00 UTC

[1/2] js commit: callbackSuccess|Error both call callbackFromNative, which catches and rethrows the exception per CB-964

Repository: cordova-js
Updated Branches:
  refs/heads/master 1d6e4a18e -> 880ffea99


callbackSuccess|Error both call callbackFromNative, which catches and rethrows the exception per CB-964


Project: http://git-wip-us.apache.org/repos/asf/cordova-js/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-js/commit/9eb4f7fa
Tree: http://git-wip-us.apache.org/repos/asf/cordova-js/tree/9eb4f7fa
Diff: http://git-wip-us.apache.org/repos/asf/cordova-js/diff/9eb4f7fa

Branch: refs/heads/master
Commit: 9eb4f7faf607ae22fb8b6ee31d24fd622dbaf64c
Parents: 1d6e4a1
Author: Jesse MacFadyen <pu...@gmail.com>
Authored: Wed Oct 1 16:00:41 2014 -0700
Committer: Jesse MacFadyen <pu...@gmail.com>
Committed: Wed Oct 1 16:15:03 2014 -0700

----------------------------------------------------------------------
 src/cordova.js   | 44 ++++++++++++++++++++++----------------------
 src/cordova_b.js | 46 +++++++++++++++++++++-------------------------
 2 files changed, 43 insertions(+), 47 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-js/blob/9eb4f7fa/src/cordova.js
----------------------------------------------------------------------
diff --git a/src/cordova.js b/src/cordova.js
index 3602b70..82930e1 100644
--- a/src/cordova.js
+++ b/src/cordova.js
@@ -181,11 +181,7 @@ var cordova = {
      * Called by native code when returning successful result from an action.
      */
     callbackSuccess: function(callbackId, args) {
-        try {
-            cordova.callbackFromNative(callbackId, true, args.status, [args.message], args.keepCallback);
-        } catch (e) {
-            console.log("Error in success callback: " + callbackId + " = "+e);
-        }
+        this.callbackFromNative(callbackId, true, args.status, [args.message], args.keepCallback);
     },
 
     /**
@@ -194,30 +190,34 @@ var cordova = {
     callbackError: function(callbackId, args) {
         // TODO: Deprecate callbackSuccess and callbackError in favour of callbackFromNative.
         // Derive success from status.
-        try {
-            cordova.callbackFromNative(callbackId, false, args.status, [args.message], args.keepCallback);
-        } catch (e) {
-            console.log("Error in error callback: " + callbackId + " = "+e);
-        }
+        this.callbackFromNative(callbackId, false, args.status, [args.message], args.keepCallback);
     },
 
     /**
      * Called by native code when returning the result from an action.
      */
-    callbackFromNative: function(callbackId, success, status, args, keepCallback) {
-        var callback = cordova.callbacks[callbackId];
-        if (callback) {
-            if (success && status == cordova.callbackStatus.OK) {
-                callback.success && callback.success.apply(null, args);
-            } else if (!success) {
-                callback.fail && callback.fail.apply(null, args);
-            }
-
-            // Clear callback if not expecting any more results
-            if (!keepCallback) {
-                delete cordova.callbacks[callbackId];
+    callbackFromNative: function(callbackId, isSuccess, status, args, keepCallback) {
+        try {
+            var callback = cordova.callbacks[callbackId];
+            if (callback) {
+                if (isSuccess && status == cordova.callbackStatus.OK) {
+                    callback.success && callback.success.apply(null, args);
+                } else {
+                    callback.fail && callback.fail.apply(null, args);
+                }
+
+                // Clear callback if not expecting any more results
+                if (!keepCallback) {
+                    delete cordova.callbacks[callbackId];
+                }
             }
         }
+        catch (err) {
+            var msg = "Error in " + (isSuccess ? "Success" : "Error") + " callbackId: " + callbackId + " : " + err;
+            console && console.log && console.log(msg);
+            this.fireWindowEvent("cordovacallbackerror", { 'message': msg });
+            throw err;
+        }
     },
     addConstructor: function(func) {
         channel.onCordovaReady.subscribe(function() {

http://git-wip-us.apache.org/repos/asf/cordova-js/blob/9eb4f7fa/src/cordova_b.js
----------------------------------------------------------------------
diff --git a/src/cordova_b.js b/src/cordova_b.js
index 3a9ed6d..ecdfd92 100644
--- a/src/cordova_b.js
+++ b/src/cordova_b.js
@@ -184,48 +184,44 @@ var cordova = {
         JSON_EXCEPTION: 8,
         ERROR: 9
     },
-
     /**
      * Called by native code when returning successful result from an action.
      */
     callbackSuccess: function(callbackId, args) {
-        try {
-            cordova.callbackFromNative(callbackId, true, args.status, [args.message], args.keepCallback);
-        } catch (e) {
-            console.log("Error in error callback: " + callbackId + " = "+e);
-        }
+        this.callbackFromNative(callbackId, true, args.status, [args.message], args.keepCallback);
     },
-
     /**
      * Called by native code when returning error result from an action.
      */
     callbackError: function(callbackId, args) {
         // TODO: Deprecate callbackSuccess and callbackError in favour of callbackFromNative.
         // Derive success from status.
-        try {
-            cordova.callbackFromNative(callbackId, false, args.status, [args.message], args.keepCallback);
-        } catch (e) {
-            console.log("Error in error callback: " + callbackId + " = "+e);
-        }
+        this.callbackFromNative(callbackId, false, args.status, [args.message], args.keepCallback);
     },
-
     /**
      * Called by native code when returning the result from an action.
      */
-    callbackFromNative: function(callbackId, success, status, args, keepCallback) {
-        var callback = cordova.callbacks[callbackId];
-        if (callback) {
-            if (success && status == cordova.callbackStatus.OK) {
-                callback.success && callback.success.apply(null, args);
-            } else if (!success) {
-                callback.fail && callback.fail.apply(null, args);
-            }
-
-            // Clear callback if not expecting any more results
-            if (!keepCallback) {
-                delete cordova.callbacks[callbackId];
+    callbackFromNative: function(callbackId, isSuccess, status, args, keepCallback) {
+        try {
+            var callback = cordova.callbacks[callbackId];
+            if (callback) {
+                if (isSuccess && status == cordova.callbackStatus.OK) {
+                    callback.success && callback.success.apply(null, args);
+                } else {
+                    callback.fail && callback.fail.apply(null, args);
+                }
+
+                // Clear callback if not expecting any more results
+                if (!keepCallback) {
+                    delete cordova.callbacks[callbackId];
+                }
             }
         }
+        catch(err) {
+            var msg = "Error in " + (isSuccess ? "Success" : "Error") + " callbackId: " + callbackId + " : " + err;
+            console.log(msg);
+            this.fireWindowEvent("callbackerror",{'message':msg});
+        }
     },
     addConstructor: function(func) {
         channel.onCordovaReady.subscribe(function() {


[2/2] js commit: browserify version rethrows also

Posted by pu...@apache.org.
browserify version rethrows also


Project: http://git-wip-us.apache.org/repos/asf/cordova-js/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-js/commit/880ffea9
Tree: http://git-wip-us.apache.org/repos/asf/cordova-js/tree/880ffea9
Diff: http://git-wip-us.apache.org/repos/asf/cordova-js/diff/880ffea9

Branch: refs/heads/master
Commit: 880ffea995065ca79335c66afdde863c6c2abf39
Parents: 9eb4f7f
Author: Jesse MacFadyen <pu...@gmail.com>
Authored: Wed Oct 1 16:17:42 2014 -0700
Committer: Jesse MacFadyen <pu...@gmail.com>
Committed: Wed Oct 1 16:17:42 2014 -0700

----------------------------------------------------------------------
 src/cordova_b.js | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-js/blob/880ffea9/src/cordova_b.js
----------------------------------------------------------------------
diff --git a/src/cordova_b.js b/src/cordova_b.js
index ecdfd92..159e38f 100644
--- a/src/cordova_b.js
+++ b/src/cordova_b.js
@@ -219,8 +219,9 @@ var cordova = {
         }
         catch(err) {
             var msg = "Error in " + (isSuccess ? "Success" : "Error") + " callbackId: " + callbackId + " : " + err;
-            console.log(msg);
-            this.fireWindowEvent("callbackerror",{'message':msg});
+            console && console.log && console.log(msg);
+            this.fireWindowEvent("cordovacallbackerror", { 'message': msg });
+            throw err;
         }
     },
     addConstructor: function(func) {