Skip to content

Commit af9de9c

Browse files
author
Mathieu Ghaleb
committed
wrap jquery's deferred[ resolveWith | rejectWith | notifyWith ]
1 parent 4391242 commit af9de9c

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

plugins/jquery.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,4 +72,19 @@ $.ajax = function ravenAjaxWrapper(url, options) {
7272
}
7373
};
7474

75+
var _oldDeferred = $.Deferred;
76+
$.Deferred = function ravenDeferredWrapper(func) {
77+
return _oldDeferred(function beforeStartWrapper(deferred) {
78+
// no need to wrap deferred[ resolve | reject | notify ]
79+
// as they are calling deferred[ resolveWith | rejectWith | notifyWith ] internally.
80+
deferred.resolveWith = Raven.wrap(deferred.resolveWith);
81+
deferred.rejectWith = Raven.wrap(deferred.rejectWith);
82+
deferred.notifyWith = Raven.wrap(deferred.notifyWith);
83+
// Call given func if any
84+
if (func) {
85+
func.call(deferred, deferred);
86+
}
87+
});
88+
};
89+
7590
}(window, window.Raven, window.jQuery));

0 commit comments

Comments
 (0)