Restangular: add generic overloads for get<T>(), getAll<T>() and post<T>()

This commit is contained in:
Jon Stelly
2014-08-26 08:23:55 -05:00
parent 3505d15d99
commit b57a5b1072
2 changed files with 10 additions and 0 deletions
+4
View File
@@ -74,9 +74,13 @@ myApp.controller('TestCtrl', (
baseAccounts.post(newAccount);
Restangular.allUrl('googlers', 'http://www.google.com/').getList();
Restangular.allUrl('googlers', 'http://www.google.com/').getList<String>();
Restangular.oneUrl('googlers', 'http://www.google.com/1').get();
Restangular.oneUrl('googlers', 'http://www.google.com/1').get<String>();
Restangular.one('accounts', 123).one('buildings', 456).get();
Restangular.one('accounts', 123).one('buildings', 456).get<String>();
Restangular.one('accounts', 123).getList('buildings');
Restangular.one('accounts', 123).getList<String>('buildings');
baseAccounts.getList().then(function (accounts) {
var firstAccount = accounts[0];
+6
View File
@@ -99,10 +99,14 @@ declare module restangular {
interface IElement extends IService {
get(queryParams?: any, headers?: any): IPromise<any>;
get<T>(queryParams?: any, headers?: any): IPromise<T>;
getList(subElement?: any, queryParams?: any, headers?: any): ICollectionPromise<any>;
getList<T>(subElement?: any, queryParams?: any, headers?: any): ICollectionPromise<T>;
put(queryParams?: any, headers?: any): IPromise<any>;
post(subElement: any, elementToPost: any, queryParams?: any, headers?: any): IPromise<any>;
post<T>(subElement: any, elementToPost: T, queryParams?: any, headers?: any): IPromise<T>;
post(elementToPost: any, queryParams?: any, headers?: any): IPromise<any>;
post<T>(elementToPost: T, queryParams?: any, headers?: any): IPromise<T>;
remove(queryParams?: any, headers?: any): IPromise<any>;
head(queryParams?: any, headers?: any): IPromise<any>;
trace(queryParams?: any, headers?: any): IPromise<any>;
@@ -114,7 +118,9 @@ declare module restangular {
interface ICollection extends IService {
getList(queryParams?: any, headers?: any): ICollectionPromise<any>;
getList<T>(queryParams?: any, headers?: any): ICollectionPromise<T>;
post(elementToPost: any, queryParams?: any, headers?: any): IPromise<any>;
post<T>(elementToPost: T, queryParams?: any, headers?: any): IPromise<T>;
head(queryParams?: any, headers?: any): IPromise<any>;
trace(queryParams?: any, headers?: any): IPromise<any>;
options(queryParams?: any, headers?: any): IPromise<any>;