angular.module('fbMocks') .factory('kontorsdelomraadeService', ['$q', function ( $q: ng.IQService ): fb.IMockKontorsdelomraadeService { var mockBase: fb.MockBase = new fb.MockBase($q); var resolve = function (type: fb.RequestType, identifier: string, returnValue: any): void { mockBase.resolve(mockBase.requestIdentifier(type, identifier), returnValue); }; var reject = function (type: fb.RequestType, identifier: string, returnValue: any): void { mockBase.reject(mockBase.requestIdentifier(type, identifier), returnValue); }; var getPendingRequests = function (): string[] { return mockBase.getPendingRequests(); }; var get = function (kontorId: number, id: number): fb.Kontorsdelomraade { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.GET, id.toString())) }; return new fb.Kontorsdelomraade(res); }; var query = function (): fb.List { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.QUERY, '')) }; return new fb.List(res, fb.KontorsdelomraadeListItem); }; var kontorquery = function (kontorId: number[]): fb.List { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.QUERY, 'kontor' + kontorId.length)) }; return new fb.List(res, fb.KontorsdelomraadeListItem); }; var add = function (kontorId: number,kontorsdelomraade: fb.Kontorsdelomraade): fb.Kontorsdelomraade { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.ADD, '')) }; return new fb.Kontorsdelomraade(res); }; var save = function (kontorId: number,kontorsdelomraade: fb.Kontorsdelomraade): fb.Kontorsdelomraade { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.SAVE, '')) }; return new fb.Kontorsdelomraade(res); }; var remove = function (kontorId: number,kontorsdelomraade: fb.Kontorsdelomraade): fb.ResourceBase { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.REMOVE, '')) }; return new fb.Kontorsdelomraade(res); }; var postKontorSearch = function (obj: fb.KontorsdelomraadeSO) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.ADD, 'postKontorSearch')) }; return new fb.List(res, fb.KontorsdelomraadeListItem); }; return { get: get, query: query, add: add, save: save, remove: remove, resolve: resolve, reject: reject, kontor :{ query: kontorquery }, postKontorSearch: postKontorSearch, getPendingRequests: getPendingRequests }; }]);