1
|
import {Injectable} from "@angular/core";
|
2
|
import {HttpClient, HttpErrorResponse} from "@angular/common/http";
|
3
|
import {Observable} from "rxjs";
|
4
|
import {Stakeholder} from "../stakeholder";
|
5
|
import {map} from "rxjs/operators";
|
6
|
|
7
|
@Injectable()
|
8
|
export class StakeholderService {
|
9
|
|
10
|
|
11
|
constructor(private http: HttpClient) {
|
12
|
}
|
13
|
|
14
|
getStakeholder(id: string): Observable<Stakeholder> {
|
15
|
return this.http.get<any>('./assets/stakeholders.json').pipe(map(json => {
|
16
|
let stakeholder = json.stakeholders.filter(stakeholder => stakeholder.index_id === id)[0];
|
17
|
if(stakeholder) {
|
18
|
return stakeholder;
|
19
|
} else {
|
20
|
throw new HttpErrorResponse({
|
21
|
error: {
|
22
|
message: 'No Stakeholder has been found',
|
23
|
status: 404
|
24
|
}
|
25
|
})
|
26
|
}
|
27
|
}));
|
28
|
}
|
29
|
}
|