29930566019c07babcdb718444760f447016699e
[portal/ric-dashboard.git] / dashboard / webapp-frontend / src / app / stats / stats.component.ts
1 /*-
2  * ========================LICENSE_START=================================
3  * O-RAN-SC
4  * %%
5  * Copyright (C) 2019 AT&T Intellectual Property
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 import { Component, OnInit, ViewChildren, QueryList } from '@angular/core';
21 import { BaseChartDirective } from 'ng2-charts/ng2-charts';
22 import { StatsService } from '../services/stats/stats.service';
23 import { HttpClient } from '@angular/common/http';
24 import { DashboardSuccessTransport } from '../interfaces/dashboard.types';
25 import { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';
26
27 @Component({
28     selector: 'rd-stats',
29     templateUrl: './stats.component.html',
30     styleUrls: ['./stats.component.scss']
31 })
32 export class StatsComponent implements OnInit {
33
34     @ViewChildren(BaseChartDirective) charts: QueryList<BaseChartDirective>;
35     checked = false;
36     metricsUrlMc: SafeResourceUrl;
37     metricsUrlMl: SafeResourceUrl;
38
39     constructor(private service: StatsService,
40         private httpClient: HttpClient,
41         private sanitize: DomSanitizer) {
42     }
43
44     ngOnInit() {
45         this.service.getAppMetricsUrl('MC').subscribe((res: DashboardSuccessTransport) => {
46             this.metricsUrlMc = this.sanitize.bypassSecurityTrustResourceUrl(res.data);
47         });
48         this.service.getAppMetricsUrl('ML').subscribe((res: DashboardSuccessTransport) => {
49             this.metricsUrlMl = this.sanitize.bypassSecurityTrustResourceUrl(res.data);
50         });
51     }
52
53 }