aboutsummaryrefslogtreecommitdiffstats
path: root/src/Resource.js
diff options
context:
space:
mode:
authorMisko Hevery2010-05-19 11:51:17 -0700
committerMisko Hevery2010-05-19 11:51:17 -0700
commit0f73084e9d21cea99f0535e6ca30a1341b7047dc (patch)
treee4586731808a708ec0a8ce137c30e99e3cb7201b /src/Resource.js
parent1bdcf72e456c74256b14f98b26e969b9de637614 (diff)
downloadangular.js-0f73084e9d21cea99f0535e6ca30a1341b7047dc.tar.bz2
added error handler to xhr requests
Diffstat (limited to 'src/Resource.js')
-rw-r--r--src/Resource.js27
1 files changed, 18 insertions, 9 deletions
diff --git a/src/Resource.js b/src/Resource.js
index c9bad0c0..724121b7 100644
--- a/src/Resource.js
+++ b/src/Resource.js
@@ -87,16 +87,25 @@ ResourceFactory.prototype = {
}
var value = action.isArray ? [] : new Resource(data);
- self.xhr(action.method, route.url(extend({}, action.params || {}, extractParams(data), params)), data, function(status, response) {
- if (action.isArray) {
- foreach(response, function(item){
- value.push(new Resource(item));
- });
- } else {
- copy(response, value);
+ self.xhr(
+ action.method,
+ route.url(extend({}, action.params || {}, extractParams(data), params)),
+ data,
+ function(status, response) {
+ if (status == 200) {
+ if (action.isArray) {
+ foreach(response, function(item){
+ value.push(new Resource(item));
+ });
+ } else {
+ copy(response, value);
+ }
+ (callback||noop)(value);
+ } else {
+ throw {status: status, response:response, message: status + ": " + response};
+ }
}
- (callback||noop)(value);
- });
+ );
return value;
};