1 import { Injectable } from '@angular/core'
2 import { HttpClient } from '@angular/common/http'
3 import 'rxjs/add/operator/catch'
4 import 'rxjs/add/operator/map'
6 import { RestExtractor } from '../../../shared'
7 import { Pod, ResultList } from '../../../../../../shared'
10 export class FriendService {
11 private static BASE_FRIEND_URL = API_URL + '/api/v1/pods/'
14 private authHttp: HttpClient,
15 private restExtractor: RestExtractor
19 return this.authHttp.get<ResultList<Pod>>(FriendService.BASE_FRIEND_URL)
20 .map(res => this.restExtractor.convertResultListDateToHuman(res))
21 .catch(res => this.restExtractor.handleError(res))
24 makeFriends (notEmptyHosts: String[]) {
29 return this.authHttp.post(FriendService.BASE_FRIEND_URL + 'make-friends', body)
30 .map(this.restExtractor.extractDataBool)
31 .catch(res => this.restExtractor.handleError(res))
35 return this.authHttp.get(FriendService.BASE_FRIEND_URL + 'quit-friends')
36 .map(this.restExtractor.extractDataBool)
37 .catch(res => this.restExtractor.handleError(res))
40 removeFriend (friend: Pod) {
41 return this.authHttp.delete(FriendService.BASE_FRIEND_URL + friend.id)
42 .map(this.restExtractor.extractDataBool)
43 .catch(res => this.restExtractor.handleError(res))