summaryrefslogtreecommitdiffstats
path: root/vid-webpack-master/src/app/shared/components/genericFormPopup/generic-form-popup.service.ts
diff options
context:
space:
mode:
Diffstat (limited to 'vid-webpack-master/src/app/shared/components/genericFormPopup/generic-form-popup.service.ts')
-rw-r--r--vid-webpack-master/src/app/shared/components/genericFormPopup/generic-form-popup.service.ts93
1 files changed, 93 insertions, 0 deletions
diff --git a/vid-webpack-master/src/app/shared/components/genericFormPopup/generic-form-popup.service.ts b/vid-webpack-master/src/app/shared/components/genericFormPopup/generic-form-popup.service.ts
new file mode 100644
index 000000000..6636a54f2
--- /dev/null
+++ b/vid-webpack-master/src/app/shared/components/genericFormPopup/generic-form-popup.service.ts
@@ -0,0 +1,93 @@
+import {Injectable} from "@angular/core";
+import {IframeService} from "../../utils/iframe.service";
+import {NgRedux} from "@angular-redux/store";
+import {AppState} from "../../store/reducers";
+import {ServicePopupService} from "./genericFormServices/service/service.popup.service";
+import {ActivatedRoute} from "@angular/router";
+import {AaiService} from "../../services/aaiService/aai.service";
+import {ITreeNode} from "angular-tree-component/dist/defs/api";
+import {UUIDData} from "./generic-form-popup.component";
+import {FormPopupDetails} from "../../models/formControlModels/formPopupDetails.model";
+import {Subject} from "rxjs";
+import {deleteAllServiceInstances} from "../../storeUtil/utils/service/service.actions";
+
+@Injectable()
+export class GenericFormPopupService {
+ constructor(private _iframeService : IframeService,
+ private _store: NgRedux<AppState>,
+ private _servicePopupService : ServicePopupService,
+ public _activatedRoute : ActivatedRoute,
+ private _aaiService : AaiService){
+
+ }
+ getGenericFormDetails(uuidData : UUIDData, node : ITreeNode, isUpdateMode : boolean) : FormPopupDetails {
+ switch (uuidData.type){
+ case 'VL' : {
+ return uuidData.popupService.getGenericFormPopupDetails(
+ uuidData['serviceId'],
+ uuidData['networkId'],
+ uuidData['networkStoreKey'],
+ node,
+ uuidData,
+ isUpdateMode
+ );
+ }
+ case 'VFmodule' : {
+ return uuidData.popupService.getGenericFormPopupDetails(
+ uuidData['serviceId'],
+ uuidData['vnfStoreKey'],
+ uuidData['vFModuleStoreKey'],
+ node,
+ uuidData,
+ isUpdateMode
+ );
+ }
+ case 'VF' : {
+ return uuidData.popupService.getGenericFormPopupDetails(
+ uuidData['serviceId'],
+ uuidData['modelName'],
+ uuidData['vnfStoreKey'],
+ node,
+ uuidData,
+ isUpdateMode
+ );
+ }
+ case 'VnfGroup' : {
+ return uuidData.popupService.getGenericFormPopupDetails(
+ uuidData['serviceId'],
+ uuidData['modelName'],
+ uuidData['vnfGroupStoreKey'],
+ node,
+ uuidData,
+ isUpdateMode
+ );
+ }
+ case 'service' : {
+ uuidData['bulkSize'] = this._store.getState().service.serviceInstance[uuidData['serviceId']].bulkSize || 1;
+ return uuidData.popupService.getGenericFormPopupDetails(
+ uuidData['serviceId'],
+ null,
+ null,
+ node,
+ uuidData,
+ isUpdateMode
+ );
+ }
+ }
+ }
+
+ initReduxOnCreateNewService() : Promise<string> {
+ return new Promise((resolve, reject) => {
+ this._activatedRoute
+ .queryParams
+ .subscribe(params => {
+ this._store.dispatch(deleteAllServiceInstances());
+ this._aaiService.getServiceModelById(params.serviceModelId).subscribe(()=>{
+ resolve(params.serviceModelId);
+ });
+ });
+ });
+ }
+
+ refreshModalCheckForGeneralErrorTrigger : Subject<boolean> = new Subject<boolean>();
+}