X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=webapp-frontend%2Fsrc%2Fapp%2Fservices%2Fpolicy%2Fpolicy.service.ts;h=dc71a83199e59ab0fa69af91fa1865d3fec0c380;hb=refs%2Fchanges%2F46%2F5546%2F1;hp=b92e8f11b37e2329bb3be1e734b8a5e7d8db2276;hpb=23c9d465c66e1d4c6168b09224bc78a90980754c;p=portal%2Fnonrtric-controlpanel.git diff --git a/webapp-frontend/src/app/services/policy/policy.service.ts b/webapp-frontend/src/app/services/policy/policy.service.ts index b92e8f1..dc71a83 100644 --- a/webapp-frontend/src/app/services/policy/policy.service.ts +++ b/webapp-frontend/src/app/services/policy/policy.service.ts @@ -22,7 +22,7 @@ import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { Observable } from 'rxjs'; import { map } from 'rxjs/operators'; -import { PolicyType, PolicyInstance, PolicyInstanceAck } from '../../interfaces/policy.types'; +import { PolicyInstance, PolicyInstanceAck, PolicyInstances, PolicyStatus, PolicyType, PolicyTypes } from '../../interfaces/policy.types'; import { ControlpanelSuccessTransport } from '../../interfaces/controlpanel.types'; /** @@ -33,12 +33,13 @@ import { ControlpanelSuccessTransport } from '../../interfaces/controlpanel.type }) export class PolicyService { - private basePath = 'api/policy'; - private policyTypePath = 'policytypes'; - private policyPath = 'policies'; + private apiVersion2 = 'v2' + private basePath = '/a1-policy/'; + policyTypesPath = 'policy-types'; + policyPath = 'policies'; private buildPath(...args: any[]) { - let result = this.basePath; + let result = this.basePath + this.apiVersion2; args.forEach(part => { result = result + '/' + part; }); @@ -49,26 +50,29 @@ export class PolicyService { // injects to variable httpClient } - /** - * Gets version details - * @returns Observable that should yield a String - */ - getVersion(): Observable { - const url = this.buildPath('version'); - return this.httpClient.get(url).pipe( - // Extract the string here - map(res => res['data']) - ); + getPolicyTypes(): Observable { + const url = this.buildPath(this.policyTypesPath); + return this.httpClient.get(url); + } + + getPolicyType(policyTypeId: string): Observable { + const url = this.buildPath(this.policyTypesPath + '/' + policyTypeId); + return this.httpClient.get(url); + } + + getPolicyInstancesByType(policyTypeId: string): Observable { + const url = this.buildPath(this.policyPath + '?' + 'policytype_id=' + policyTypeId); + return this.httpClient.get(url); } - getPolicyTypes(): Observable { - const url = this.buildPath(this.policyTypePath); - return this.httpClient.get(url); + getPolicyInstance(policyId: string): Observable { + const url = this.buildPath(this.policyPath) + '/' + policyId; + return this.httpClient.get(url); } - getPolicyInstances(policyTypeId: string): Observable { - const url = this.buildPath(this.policyTypePath, policyTypeId, this.policyPath); - return this.httpClient.get(url); + getPolicyStatus(policyId: string): Observable { + const url = this.buildPath(this.policyPath) + '/' + policyId + '/status'; + return this.httpClient.get(url); } /** @@ -76,7 +80,7 @@ export class PolicyService { * @returns Observable that should yield a policy instance */ getPolicy(policyTypeId: string, policyInstanceId: string): Observable { - const url = this.buildPath(this.policyTypePath, policyTypeId, this.policyPath, policyInstanceId); + const url = this.buildPath(this.policyPath, policyInstanceId) + '?type=' + policyTypeId; return this.httpClient.get(url); } @@ -88,7 +92,7 @@ export class PolicyService { * @returns Observable that should yield a response code, no data */ putPolicy(policyTypeId: string, policyInstanceId: string, policyJson: string, ric: string): Observable { - const url = this.buildPath(this.policyTypePath, policyTypeId, this.policyPath, policyInstanceId) + '?ric=' + ric; + const url = this.buildPath(this.policyPath, policyInstanceId) + '?ric=' + ric + '&type=' + policyTypeId; return this.httpClient.put(url, policyJson, { observe: 'response' }); } @@ -99,7 +103,7 @@ export class PolicyService { * @returns Observable that should yield a response code, no data */ deletePolicy(policyTypeId: string, policyInstanceId: string): Observable { - const url = this.buildPath(this.policyTypePath, policyTypeId, this.policyPath, policyInstanceId); + const url = this.buildPath(this.policyPath, policyInstanceId) + '?type=' + policyTypeId; return this.httpClient.delete(url, { observe: 'response' }); }