1 import {ChildNodeInstance} from "./nodeInstance";
2 import {NodeModel} from "./nodeModel";
3 import {ServiceNodeTypes} from "./ServiceNodeTypes";
4 import * as _ from 'lodash';
5 import {PauseStatus, ServiceInstanceActions} from "./serviceInstanceActions";
6 import {ModelInfo} from "./modelInfo";
8 export enum TreeLevel {
9 Level_0 , Level_1, Level_2
12 interface TreeNodeInstanceInterface {
14 getModel(): NodeModel;
15 convertToTreeNode(node: any): any;
16 type: ServiceNodeTypes;
18 export class TreeNodeModel {
21 modelInvariantId?: string;
22 modelCustomizationId?: string;
23 modelUniqueId?: string;
27 instanceModelInfo?: ModelInfo;
29 isEcompGeneratedNaming: boolean;
35 instanceType?: string;
36 instanceName?: string;
37 pauseInstantiation?: PauseStatus;
39 constructor(instance: ChildNodeInstance, nodeModel: NodeModel){
41 this.modelInvariantId = nodeModel.invariantUuid;
42 this.instanceModelInfo = instance.modelInfo;
43 if (instance.modelInfo) {
44 this.modelCustomizationId = instance.modelInfo.modelCustomizationId;
45 this.modelId = instance.modelInfo.modelVersionId;
47 console.debug("no 'modelInfo' in node-instance", instance)
49 this.modelUniqueId = this.modelCustomizationId || this.modelId;
50 this.missingData = false;
51 this.id = instance.trackById;
52 this.action = !_.isNil(instance.action) ? instance.action : ServiceInstanceActions.Create;
54 if(!_.isNil(instance.orchStatus)){
55 this.orchStatus= instance.orchStatus;
58 if(!_.isNil(instance.provStatus)){
59 this.provStatus= instance.provStatus;
62 if(!_.isNil(instance.inMaint)){
63 this.inMaint= instance.inMaint;
66 if(!_.isNil(instance.instanceId)){
67 this.instanceId= instance.instanceId;
69 if(!_.isNil(instance.instanceType)){
70 this.instanceType= instance.instanceType;
72 if(!_.isNil(instance.instanceName)){
73 this.instanceName= instance.instanceName;