diff options
author | Stone, Avi (as206k) <as206k@att.com> | 2018-04-12 16:36:39 +0300 |
---|---|---|
committer | Stone, Avi (as206k) <as206k@att.com> | 2018-04-12 16:36:39 +0300 |
commit | 9b2ceb347a3371819fcad6bbe2268203afecaf4e (patch) | |
tree | fbb5ea2c147d71dfeeec0882b215423e7b7206b4 /public/src/app/api/rest-api.service.ts | |
parent | 72dc8e3298d3e4315cdd9717b778671cb0b625bc (diff) |
DCAE-D fe initial commit
DCAE-D fe initial commit
Change-Id: Ica8ccb7c7ef769c969664d1e168d205eb9fc67f2
Issue-ID: SDC-1218
Signed-off-by: Stone, Avi (as206k) <as206k@att.com>
Diffstat (limited to 'public/src/app/api/rest-api.service.ts')
-rw-r--r-- | public/src/app/api/rest-api.service.ts | 179 |
1 files changed, 179 insertions, 0 deletions
diff --git a/public/src/app/api/rest-api.service.ts b/public/src/app/api/rest-api.service.ts new file mode 100644 index 0000000..ba5cc54 --- /dev/null +++ b/public/src/app/api/rest-api.service.ts @@ -0,0 +1,179 @@ +import { Injectable } from '@angular/core'; +import { + Http, + Response, + Headers, + RequestOptions, + URLSearchParams +} from '@angular/http'; +import { Observable } from 'rxjs/Observable'; +// Import RxJs required methods +import 'rxjs/add/operator/map'; +import 'rxjs/add/operator/catch'; +import 'rxjs/add/observable/throw'; +import { environment } from '../../environments/environment'; +import { v4 as uuidGenarator } from 'uuid'; + +@Injectable() +export class RestApiService { + options: RequestOptions; + headers: Headers; + baseUrl: string; + + constructor(private http: Http) { + this.baseUrl = `${environment.apiBaseUrl}`; + this.headers = new Headers({ + 'Content-Type': 'application/json', + USER_ID: 'ym903w' + }); + this.options = new RequestOptions({ headers: this.headers }); + } + + getVfcmtsForMigration(params) { + const { contextType, uuid, version } = params; + const url = `${ + this.baseUrl + }/${contextType}/${uuid}/${version}/getVfcmtsForMigration`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => { + return Observable.throw(error.json() || 'Server error'); + }); + } + + getVfcmtReferenceData(vfcmtUUID) { + const url = `${this.baseUrl}/getVfcmtReferenceData/${vfcmtUUID}`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + getFlowType() { + const url = `${this.baseUrl}/conf/composition`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + createNewVFCMT(params) { + const url = `${this.baseUrl}/createMC`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .post(url, params, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => { + return Observable.throw(error.json() || 'Server error'); + }); + } + + importVFCMT(params) { + const url = `${this.baseUrl}/importMC`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .post(url, params, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => { + return Observable.throw(error.json() || 'Server error'); + }); + } + + getServiceInstances(serviceID) { + const url = `${this.baseUrl}/service/${serviceID}`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => { + return Observable.throw(error.json() || 'Server error'); + }); + } + + getTemplateResources() { + const url = `${this.baseUrl}/getResourcesByMonitoringTemplateCategory`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + getMonitoringComponents(params) { + const { contextType, uuid, version } = params; + const url = `${ + this.baseUrl + }/${contextType}/${uuid}/${version}/monitoringComponents`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + deleteMonitoringComponent(params, vfcmtUuid, vfiName) { + const { contextType, uuid } = params; + const url = `${ + this.baseUrl + }/${contextType}/${uuid}/${vfiName}/${vfcmtUuid}/deleteVfcmtReference`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .delete(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + deleteMonitoringComponentWithBlueprint( + params, + monitoringComponentName, + vfcmtUuid, + vfiName + ) { + const { contextType, uuid } = params; + const url = `${ + this.baseUrl + }/${contextType}/${monitoringComponentName}/${uuid}/${vfiName}/${vfcmtUuid}/deleteVfcmtReference`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .delete(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + getCompositionMonitoringComponent(vfcmtUuid) { + const url = `${this.baseUrl}/getMC/${vfcmtUuid}`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + saveMonitoringComponent(params) { + const { contextType, serviceUuid, vfiName, vfcmtUuid, cdump } = params; + const url = `${ + this.baseUrl + }/${contextType}/${serviceUuid}/${vfiName}/saveComposition/${vfcmtUuid}`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .post(url, cdump, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + submitMonitoringComponent(params) { + const { contextType, serviceUuid, vfiName, vfcmtUuid, flowType } = params; + const url = `${ + this.baseUrl + }/${contextType}/createBluePrint/${vfcmtUuid}/${serviceUuid}/${vfiName}`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .post(url, {}, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } +} |