1 import {ILevelNodeInfo} from "../basic.model.info";
2 import {DynamicInputsService} from "../../dynamicInputs.service";
3 import * as _ from 'lodash';
4 import {SharedTreeService} from "../../shared.tree.service";
5 import {ITreeNode} from "angular-tree-component/dist/defs/api";
6 import {AvailableNodeIcons} from "../../../available-models-tree/available-models-tree.service";
7 import {ComponentInfoType} from "../../../component-info/component-info-model";
8 import {ModelInformationItem} from "../../../../../shared/components/model-information/model-information.component";
10 export class ConfigurationModelInfo implements ILevelNodeInfo{
11 constructor(private _dynamicInputsService : DynamicInputsService,
12 private _sharedTreeService : SharedTreeService){}
13 name: string = 'configurations';
14 type : string = 'Configuration';
15 typeName : string = 'C';
16 componentInfoType = ComponentInfoType.CONFIGURATION;
18 isEcompGeneratedNaming = () : boolean => true;
20 updateDynamicInputsDataFromModel = () : any => [];
22 getNextLevelObject = (): any => null;
24 getTooltip = () : string => 'Configuration';
26 getType = () : string => "Configuration";
28 /***********************************************************
29 * return configuration model
30 * @param configurationModelId - current Model id
31 * @param serviceHierarchy - serviceHierarchy
32 ************************************************************/
33 getModel = (configurationModelId : string, serviceHierarchy) : any =>{
34 if(!_.isNil(serviceHierarchy)){
35 if(!_.isNil(serviceHierarchy[this.name]) && !_.isNil(serviceHierarchy[this.name][configurationModelId])){
36 return serviceHierarchy[this.name][configurationModelId];
42 createInstanceTreeNode(instance: any, model: any, storeKey: string): any {return null;}
46 /***********************************************************
47 * return if instance has missing data
48 * @param instance - vnf instance
49 * @param dynamicInputs
50 * @param isEcompGeneratedNaming
51 ************************************************************/
52 hasMissingData(instance, dynamicInputs: any, isEcompGeneratedNaming: boolean): boolean {
53 return this._sharedTreeService.hasMissingData(instance, dynamicInputs, isEcompGeneratedNaming, []);
56 onClickAdd(node: ITreeNode, serviceModelId: string): void {
59 getNodeCount(node: ITreeNode, serviceModelId: string): number {
63 /***********************************************************
64 * should show node icon
65 * @param node - current ITrees node
66 * @param serviceModelId - service id
67 ************************************************************/
68 showNodeIcons(node: ITreeNode, serviceModelId: string): AvailableNodeIcons {
72 getMenuAction(node: ITreeNode, serviceModelId : string){
78 updatePosition(that , node, instanceId): void {
82 getNodePosition(instance): number {
86 onSelectedNode(node: ITreeNode): void {
89 getInfo(model, instance): ModelInformationItem[] {