3389645153dd8d7e7b65605c8a5646b45c15e503
[vid.git] / vid-webpack-master / src / app / drawingBoard / service-planning / objectsToTree / objectToTree.service.ts
1 import {Injectable} from "@angular/core";
2 import {ILevelNodeInfo} from "./models/basic.model.info";
3 import {VnfModelInfo} from "./models/vnf/vnf.model.info";
4 import {NetworkModelInfo} from "./models/network/network.model.info";
5 import {ConfigurationModelInfo} from "./models/configuration/configuration.model.info";
6 import {DefaultDataGeneratorService} from "../../../shared/services/defaultDataServiceGenerator/default.data.generator.service";
7 import {DynamicInputsService} from "./dynamicInputs.service";
8 import {SharedTreeService} from "./shared.tree.service";
9 import {NgRedux} from "@angular-redux/store";
10 import {AppState} from "../../../shared/store/reducers";
11 import {DialogService} from "ng2-bootstrap-modal";
12 import {VnfPopupService} from "../../../shared/components/genericFormPopup/genericFormServices/vnf/vnf.popup.service";
13 import {NetworkPopupService} from "../../../shared/components/genericFormPopup/genericFormServices/network/network.popup.service";
14 import {VfModulePopuopService} from "../../../shared/components/genericFormPopup/genericFormServices/vfModule/vfModule.popuop.service";
15 import {VnfGroupingModelInfo} from "./models/vnfGrouping/vnfGrouping.model.info";
16 import {VnfGroupPopupService} from "../../../shared/components/genericFormPopup/genericFormServices/vnfGroup/vnfGroup.popup.service";
17 import {DuplicateService} from "../duplicate/duplicate.service";
18 import {SdcUiServices} from "onap-ui-angular";
19 import {IframeService} from "../../../shared/utils/iframe.service";
20 import {ComponentInfoService} from "../component-info/component-info.service";
21
22 @Injectable()
23 export class ObjectToTreeService {
24   constructor(private _defaultDataGeneratorService: DefaultDataGeneratorService,
25               private _dynamicInputsService: DynamicInputsService,
26               private _sharedTreeService : SharedTreeService,
27               private _dialogService : DialogService,
28               private _vnfPopupService : VnfPopupService,
29               private  _networkPopupService :  NetworkPopupService,
30               private _vfModulePopupService : VfModulePopuopService,
31               private _vnfGroupPopupService : VnfGroupPopupService,
32               private _duplicateService : DuplicateService,
33               private _modalService: SdcUiServices.ModalService,
34               private _iframeService : IframeService,
35               private _componentInfoService : ComponentInfoService,
36               private _store : NgRedux<AppState>) {
37   }
38
39
40
41
42   /***********************************************************
43    * return all first optional first level of the model tree
44    ************************************************************/
45   getFirstLevelOptions(): ILevelNodeInfo[] {
46     return [new VnfModelInfo(this._dynamicInputsService, this._sharedTreeService, this._defaultDataGeneratorService, this._dialogService, this._vnfPopupService, this._vfModulePopupService, this._duplicateService, this._modalService, this._iframeService, this._componentInfoService, this._store)
47       , new NetworkModelInfo(this._dynamicInputsService, this._sharedTreeService, this._dialogService, this._networkPopupService, this._duplicateService, this._modalService, this._iframeService,  this._store),
48       new ConfigurationModelInfo(this._dynamicInputsService, this._sharedTreeService),
49       new VnfGroupingModelInfo(this._dynamicInputsService, this._sharedTreeService, this._dialogService, this._vnfGroupPopupService, this._iframeService, this._store)];
50   };
51 }