Michael Lando | dd60339 | 2017-07-12 00:54:52 +0300 | [diff] [blame] | 1 | /*- |
| 2 | * ============LICENSE_START======================================================= |
| 3 | * SDC |
| 4 | * ================================================================================ |
| 5 | * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. |
| 6 | * ================================================================================ |
| 7 | * Licensed under the Apache License, Version 2.0 (the "License"); |
| 8 | * you may not use this file except in compliance with the License. |
| 9 | * You may obtain a copy of the License at |
| 10 | * |
| 11 | * http://www.apache.org/licenses/LICENSE-2.0 |
| 12 | * |
| 13 | * Unless required by applicable law or agreed to in writing, software |
| 14 | * distributed under the License is distributed on an "AS IS" BASIS, |
| 15 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 16 | * See the License for the specific language governing permissions and |
| 17 | * limitations under the License. |
| 18 | * ============LICENSE_END========================================================= |
| 19 | */ |
| 20 | |
Michael Lando | ed64b5e | 2017-06-09 03:19:04 +0300 | [diff] [blame] | 21 | 'use strict'; |
| 22 | import {Activity} from "../models/activity"; |
| 23 | import {IAppConfigurtaion, IApi} from "../models/app-config"; |
| 24 | |
| 25 | // Define an interface of the object you want to use, providing it's properties |
| 26 | export interface IActivityLogService { |
| 27 | getActivityLogService(type:string, id:string):ng.IPromise<Array<Activity>>; |
| 28 | } |
| 29 | |
| 30 | export class ActivityLogService implements IActivityLogService { |
| 31 | |
| 32 | |
| 33 | static '$inject' = ['$http', '$q', 'sdcConfig']; |
| 34 | private api:IApi; |
| 35 | |
| 36 | constructor(private $http:ng.IHttpService, private $q:ng.IQService, sdcConfig:IAppConfigurtaion) { |
| 37 | this.api = sdcConfig.api; |
| 38 | } |
| 39 | |
| 40 | getActivityLogService = (type:string, id:string):ng.IPromise<Array<Activity>> => { |
| 41 | let defer = this.$q.defer<any>(); |
| 42 | this.$http.get(this.api.root + this.api.GET_activity_log.replace(':type', type).replace(':id', id)) |
| 43 | .then((activityLog:any) => { |
| 44 | defer.resolve(activityLog.data); |
| 45 | }); |
| 46 | return defer.promise; |
| 47 | } |
| 48 | } |