diff options
author | Ittay Stern <ittay.stern@att.com> | 2020-01-21 12:20:37 +0200 |
---|---|---|
committer | Ittay Stern <ittay.stern@att.com> | 2020-01-21 15:48:40 +0200 |
commit | 6b1e53d593a958254481f2043f6da8c6c96d4a0b (patch) | |
tree | 69f66ce6d3961c66fec2fc55618a426776715604 /vid-webpack-master/src/app/drawingBoard/service-planning/objectsToTree/shared.tree.service.ts | |
parent | b96cada06214d609d32a38ca89d71cc53169324c (diff) |
originalName may be model's "entry name", customizationId or invariantId
The classic originalName is the "entry name". So two more options
were added through SharedTreeService::modelByIdentifier()
function.
Issue-ID: VID-724
Change-Id: I9f192d2b24c9c1659a95baabd21252bed392e9da
Signed-off-by: Ittay Stern <ittay.stern@att.com>
Diffstat (limited to 'vid-webpack-master/src/app/drawingBoard/service-planning/objectsToTree/shared.tree.service.ts')
-rw-r--r-- | vid-webpack-master/src/app/drawingBoard/service-planning/objectsToTree/shared.tree.service.ts | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/vid-webpack-master/src/app/drawingBoard/service-planning/objectsToTree/shared.tree.service.ts b/vid-webpack-master/src/app/drawingBoard/service-planning/objectsToTree/shared.tree.service.ts index 1115d1bc6..6c985ec6a 100644 --- a/vid-webpack-master/src/app/drawingBoard/service-planning/objectsToTree/shared.tree.service.ts +++ b/vid-webpack-master/src/app/drawingBoard/service-planning/objectsToTree/shared.tree.service.ts @@ -54,6 +54,25 @@ export class SharedTreeService { : (nodeInstance.modelInfo.modelCustomizationId || nodeInstance.modelInfo.modelInvariantId); }; + /** + * Finds a model inside a full service model + * @param serviceModelFromHierarchy + * @param modelTypeName "vnfs" | "networks" | "vfModules" | "collectionResources" | ... + * @param modelUniqueIdOrName Either an entry name (i.e. "originalName"), modelCustomizationId or modelInvariantId. + * Note that modelInvariantId will work only where model lacks a modelCustomizationId. + */ + modelByIdentifier = (serviceModelFromHierarchy, modelTypeName: string, modelUniqueIdOrName: string): any => { + if (_.isNil(serviceModelFromHierarchy)) return undefined; + + const modelsOfType = serviceModelFromHierarchy[modelTypeName]; + if (_.isNil(modelsOfType)) return undefined; + + const modelIfModelIdentifierIsEntryName = modelsOfType[modelUniqueIdOrName]; + return _.isNil(modelIfModelIdentifierIsEntryName) + ? _.find(modelsOfType, o => (o.customizationUuid || o.invariantUuid) === modelUniqueIdOrName) + : modelIfModelIdentifierIsEntryName; + }; + hasMissingData(instance, dynamicInputs: any, isEcompGeneratedNaming: boolean, requiredFields: string[]): boolean { if (!isEcompGeneratedNaming && _.isEmpty(instance.instanceName)) { return true; |