From 032525a375681fb18cc498d8daed9d73faa21ec3 Mon Sep 17 00:00:00 2001 From: MichaelMorris Date: Tue, 23 Jun 2020 09:15:48 +0100 Subject: Support for Nested/Hierarchical Services Change-Id: I478cf2e1f9cf96443a3e35bf22ac2c9d72bca8f1 Issue-ID: SDC-3145 Signed-off-by: MichaelMorris --- catalog-ui/src/app/utils/component-instance-factory.ts | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'catalog-ui/src/app/utils/component-instance-factory.ts') diff --git a/catalog-ui/src/app/utils/component-instance-factory.ts b/catalog-ui/src/app/utils/component-instance-factory.ts index 03abd96a77..748bd39c9b 100644 --- a/catalog-ui/src/app/utils/component-instance-factory.ts +++ b/catalog-ui/src/app/utils/component-instance-factory.ts @@ -22,7 +22,7 @@ */ 'use strict'; import { ComponentType } from 'app/utils'; -import { Component, ComponentInstance, ResourceInstance, ServiceInstance, ServiceProxyInstance } from '../models'; +import { Component, ComponentInstance, ResourceInstance, ServiceInstance, ServiceSubstitutionInstance, ServiceProxyInstance } from '../models'; import { LeftPaletteComponent } from '../models/components/displayComponent'; export class ComponentInstanceFactory { @@ -36,6 +36,9 @@ export class ComponentInstanceFactory { case ComponentType.SERVICE_PROXY: newComponentInstance = new ServiceProxyInstance(componentInstance); break; + case ComponentType.SERVICE_SUBSTITUTION: + newComponentInstance = new ServiceSubstitutionInstance(componentInstance); + break; default : newComponentInstance = new ResourceInstance(componentInstance); break; @@ -52,6 +55,9 @@ export class ComponentInstanceFactory { case ComponentType.SERVICE_PROXY: newComponentInstance = new ServiceProxyInstance(); break; + case ComponentType.SERVICE_SUBSTITUTION: + newComponentInstance = new ServiceSubstitutionInstance(); + break; default : newComponentInstance = new ResourceInstance(); break; @@ -59,7 +65,7 @@ export class ComponentInstanceFactory { return newComponentInstance; } - static createComponentInstanceFromComponent = (component: LeftPaletteComponent): ComponentInstance => { + static createComponentInstanceFromComponent = (component: LeftPaletteComponent, useServiceSubstitutionForNestedServices?: boolean): ComponentInstance => { const newComponentInstance: ComponentInstance = ComponentInstanceFactory.createEmptyComponentInstance(component.componentType); newComponentInstance.uniqueId = component.uniqueId + (new Date()).getTime(); newComponentInstance.posX = 0; @@ -78,7 +84,11 @@ export class ComponentInstanceFactory { return component.componentSubType; } else { if (component.componentType === ComponentType.SERVICE) { - return ComponentType.SERVICE_PROXY; + if (useServiceSubstitutionForNestedServices){ + return ComponentType.SERVICE_SUBSTITUTION; + } else { + return ComponentType.SERVICE_PROXY; + } } else { return component.resourceType; } -- cgit 1.2.3-korg