diff options
| author | Vojta Jina | 2011-10-19 10:47:17 -0700 |
|---|---|---|
| committer | Igor Minar | 2011-11-30 11:17:22 -0500 |
| commit | feacf608eefa8cc64845a643f7270c9c3a16d1b8 (patch) | |
| tree | 43b13081c41f17b7994577c6cb02e6216f5c5b30 /src | |
| parent | fe633dd0cf3d52f84ce73f486bcbd4e1d3058857 (diff) | |
| download | angular.js-feacf608eefa8cc64845a643f7270c9c3a16d1b8.tar.bz2 | |
fix($resource): to work with $http, $httpBackend services
Breaks Disabling $resource caching for the moment.
Diffstat (limited to 'src')
| -rw-r--r-- | src/Resource.js | 21 | ||||
| -rw-r--r-- | src/service/resource.js | 13 |
2 files changed, 17 insertions, 17 deletions
diff --git a/src/Resource.js b/src/Resource.js index 959561e4..4bec60f9 100644 --- a/src/Resource.js +++ b/src/Resource.js @@ -36,8 +36,8 @@ Route.prototype = { } }; -function ResourceFactory(xhr) { - this.xhr = xhr; +function ResourceFactory($http) { + this.$http = $http; } ResourceFactory.DEFAULT_ACTIONS = { @@ -107,11 +107,11 @@ ResourceFactory.prototype = { } var value = this instanceof Resource ? this : (action.isArray ? [] : new Resource(data)); - self.xhr( - action.method, - route.url(extend({}, extractParams(data), action.params || {}, params)), - data, - function(status, response) { + var future = self.$http({ + method: action.method, + url: route.url(extend({}, extractParams(data), action.params || {}, params)), + data: data + }).on('success', function(response, status) { if (response) { if (action.isArray) { value.length = 0; @@ -123,9 +123,10 @@ ResourceFactory.prototype = { } } (success||noop)(value); - }, - error || action.verifyCache, - action.verifyCache); + }); + + if (error) future.on('error', error); + return value; }; diff --git a/src/service/resource.js b/src/service/resource.js index 2082b9ed..8fe27f1b 100644 --- a/src/service/resource.js +++ b/src/service/resource.js @@ -3,15 +3,14 @@ /** * @ngdoc object * @name angular.module.ng.$resource - * @requires $xhr.cache + * @requires $http * * @description * A factory which creates a resource object that lets you interact with * [RESTful](http://en.wikipedia.org/wiki/Representational_State_Transfer) server-side data sources. * * The returned resource object has action methods which provide high-level behaviors without - * the need to interact with the low level {@link angular.module.ng.$xhr $xhr} service or - * raw XMLHttpRequest. + * the need to interact with the low level {@link angular.module.ng.$http $http} service. * * @param {string} url A parameterized URL template with parameters prefixed by `:` as in * `/user/:username`. @@ -57,7 +56,7 @@ * 'remove': {method:'DELETE'}, * 'delete': {method:'DELETE'} }; * - * Calling these methods invoke an {@link angular.module.ng.$xhr} with the specified http method, + * Calling these methods invoke an {@link angular.module.ng.$http} with the specified http method, * destination and parameters. When the data is returned from the server then the object is an * instance of the resource class `save`, `remove` and `delete` actions are available on it as * methods with the `$` prefix. This allows you to easily perform CRUD operations (create, read, @@ -128,7 +127,7 @@ * The object returned from this function execution is a resource "class" which has "static" method * for each action in the definition. * - * Calling these methods invoke `$xhr` on the `url` template with the given `method` and `params`. + * Calling these methods invoke `$http` on the `url` template with the given `method` and `params`. * When the data is returned from the server then the object is an instance of the resource type and * all of the non-GET methods are available with `$` prefix. This allows you to easily support CRUD * operations (create, read, update, delete) on server-side data. @@ -201,8 +200,8 @@ </doc:example> */ function $ResourceProvider() { - this.$get = ['$xhr.cache', function($xhr){ - var resource = new ResourceFactory($xhr); + this.$get = ['$http', function($http) { + var resource = new ResourceFactory($http); return bind(resource, resource.route); }]; } |
