Project

General

Profile

« Previous | Next » 

Revision 57496

[Monitor_dashboard]:Initialize monitor admin. Home page has been created.

View differences:

stakeholder.service.ts
1 1
import {Injectable} from "@angular/core";
2 2
import {HttpClient} from "@angular/common/http";
3 3
import {BehaviorSubject, Observable} from "rxjs";
4
import {Indicator, Stakeholder} from "../utils/entities/stakeholder";
5
import {map} from "rxjs/operators";
4
import {Stakeholder} from "../utils/entities/stakeholder";
6 5

  
7
@Injectable()
6
@Injectable({
7
  providedIn: "root"
8
})
8 9
export class StakeholderService {
9 10

  
11
  private stakeholderSubject: BehaviorSubject<Stakeholder> = null;
12

  
10 13
  constructor(private http: HttpClient) {
14
    this.stakeholderSubject = new BehaviorSubject<Stakeholder>(null);
11 15
  }
12 16

  
13 17
  getStakeholder(alias: string): Observable<Stakeholder> {
14
    /*return this.http.get<any>('./assets/stakeholders.json').pipe(map(json => {
15
      let stakeholder = json.stakeholders.filter(stakeholder => stakeholder.alias === alias)[0];
16
      if (stakeholder) {
17
        stakeholder.topics = stakeholder.topics.filter(topic => topic.isActive && topic.isPublic);
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 18
    return new BehaviorSubject<Stakeholder>(Stakeholder.createECStakeholder()).asObservable();
29 19
  }
20

  
21
  getStakeholderAsObservable(): Observable<Stakeholder> {
22
    return this.stakeholderSubject.asObservable();
23
  }
24

  
25
  get stakeholder(): Stakeholder {
26
    return this.stakeholderSubject.getValue();
27
  }
28

  
29
  setStakeholder(stakeholder: Stakeholder) {
30
    this.stakeholderSubject.next(stakeholder);
31
  }
30 32
}

Also available in: Unified diff