Merge pull request #1249 from daptiv/updating-angular-resource

updating angular 1.2 resource
This commit is contained in:
basarat
2013-11-11 15:14:44 -08:00
2 changed files with 62 additions and 29 deletions

View File

@@ -16,6 +16,7 @@ actionDescriptor.params = { key: 'value' };
///////////////////////////////////////
var resourceClass: ng.resource.IResourceClass;
var resource: ng.resource.IResource;
var resourceArray: ng.resource.IResource[];
resource = resourceClass.delete();
resource = resourceClass.delete({ key: 'value' });
@@ -35,14 +36,14 @@ resource = resourceClass.get({ key: 'value' }, { key: 'value' });
resource = resourceClass.get({ key: 'value' }, { key: 'value' }, function () { });
resource = resourceClass.get({ key: 'value' }, { key: 'value' }, function () { }, function () { });
resource = resourceClass.query();
resource = resourceClass.query({ key: 'value' });
resource = resourceClass.query({ key: 'value' }, function () { });
resource = resourceClass.query(function () { });
resource = resourceClass.query(function () { }, function () { });
resource = resourceClass.query({ key: 'value' }, { key: 'value' });
resource = resourceClass.query({ key: 'value' }, { key: 'value' }, function () { });
resource = resourceClass.query({ key: 'value' }, { key: 'value' }, function () { }, function () { });
resourceArray = resourceClass.query();
resourceArray = resourceClass.query({ key: 'value' });
resourceArray = resourceClass.query({ key: 'value' }, function () { });
resourceArray = resourceClass.query(function () { });
resourceArray = resourceClass.query(function () { }, function () { });
resourceArray = resourceClass.query({ key: 'value' }, { key: 'value' });
resourceArray = resourceClass.query({ key: 'value' }, { key: 'value' }, function () { });
resourceArray = resourceClass.query({ key: 'value' }, { key: 'value' }, function () { }, function () { });
resource = resourceClass.remove();
resource = resourceClass.remove({ key: 'value' });

View File

@@ -36,34 +36,66 @@ declare module ng.resource {
// Baseclass for everyresource with default actions.
// If you define your new actions for the resource, you will need
// to extend this interface and typecast the ResourceClass to it.
interface IResourceClass {
get: IActionCall;
save: IActionCall;
query: IActionCall;
remove: IActionCall;
delete: IActionCall;
}
//
// In case of passing the first argument as anything but a function,
// it's gonna be considered data if the action method is POST, PUT or
// PATCH (in other words, methods with body). Otherwise, it's going
// to be considered as parameters to the request.
interface IActionCall {
(): IResource;
(dataOrParams: any): IResource;
(dataOrParams: any, success: Function): IResource;
(success: Function, error?: Function): IResource;
(params: any, data: any, success?: Function, error?: Function): IResource;
// https://github.com/angular/angular.js/blob/v1.2.0/src/ngResource/resource.js#L461-L465
interface IResourceClass {
get(): IResource;
get(dataOrParams: any): IResource;
get(dataOrParams: any, success: Function): IResource;
get(success: Function, error?: Function): IResource;
get(params: any, data: any, success?: Function, error?: Function): IResource;
save(): IResource;
save(dataOrParams: any): IResource;
save(dataOrParams: any, success: Function): IResource;
save(success: Function, error?: Function): IResource;
save(params: any, data: any, success?: Function, error?: Function): IResource;
query(): IResource[];
query(dataOrParams: any): IResource[];
query(dataOrParams: any, success: Function): IResource[];
query(success: Function, error?: Function): IResource[];
query(params: any, data: any, success?: Function, error?: Function): IResource[];
remove(): IResource;
remove(dataOrParams: any): IResource;
remove(dataOrParams: any, success: Function): IResource;
remove(success: Function, error?: Function): IResource;
remove(params: any, data: any, success?: Function, error?: Function): IResource;
delete(): IResource;
delete(dataOrParams: any): IResource;
delete(dataOrParams: any, success: Function): IResource;
delete(success: Function, error?: Function): IResource;
delete(params: any, data: any, success?: Function, error?: Function): IResource;
}
interface IResource {
$save: IActionCall;
$remove: IActionCall;
$delete: IActionCall;
// No documented, but they are there, just as any custom action will be
$query: IActionCall;
$get: IActionCall;
$get(): IResource;
$get(dataOrParams: any): IResource;
$get(dataOrParams: any, success: Function): IResource;
$get(success: Function, error?: Function): IResource;
$get(params: any, data: any, success?: Function, error?: Function): IResource;
$save(): IResource;
$save(dataOrParams: any): IResource;
$save(dataOrParams: any, success: Function): IResource;
$save(success: Function, error?: Function): IResource;
$save(params: any, data: any, success?: Function, error?: Function): IResource;
$query(): IResource[];
$query(dataOrParams: any): IResource[];
$query(dataOrParams: any, success: Function): IResource[];
$query(success: Function, error?: Function): IResource[];
$query(params: any, data: any, success?: Function, error?: Function): IResource[];
$remove(): IResource;
$remove(dataOrParams: any): IResource;
$remove(dataOrParams: any, success: Function): IResource;
$remove(success: Function, error?: Function): IResource;
$remove(params: any, data: any, success?: Function, error?: Function): IResource;
$delete(): IResource;
$delete(dataOrParams: any): IResource;
$delete(dataOrParams: any, success: Function): IResource;
$delete(success: Function, error?: Function): IResource;
$delete(params: any, data: any, success?: Function, error?: Function): IResource;
}
/** when creating a resource factory via IModule.factory */