summaryrefslogtreecommitdiffstats
path: root/catalog-ui/src/app/ng2/pages/composition/graph/utils/match-capability-requirement-utils.ts
diff options
context:
space:
mode:
authorandre.schmid <andre.schmid@est.tech>2020-04-03 17:41:23 +0100
committerOfir Sonsino <ofir.sonsino@intl.att.com>2020-04-19 10:36:00 +0000
commitdc56692a4a307f378c827f017d2efbf754c223e0 (patch)
tree3420903b178baa9a3858f681b81575af1cf64a72 /catalog-ui/src/app/ng2/pages/composition/graph/utils/match-capability-requirement-utils.ts
parent781e0930c17e5ae8fba643195abff5f4fc1cc6b8 (diff)
Max boundary check for instances relationships
Considering the max boundary of a requirement during a component composition, allowing the correct number of the requirement relationships between instances. Change-Id: I82a1a6daeda8fadcf1c232b117d5b099db7b35d7 Issue-ID: SDC-2872 Signed-off-by: andre.schmid <andre.schmid@est.tech>
Diffstat (limited to 'catalog-ui/src/app/ng2/pages/composition/graph/utils/match-capability-requirement-utils.ts')
-rw-r--r--catalog-ui/src/app/ng2/pages/composition/graph/utils/match-capability-requirement-utils.ts10
1 files changed, 8 insertions, 2 deletions
diff --git a/catalog-ui/src/app/ng2/pages/composition/graph/utils/match-capability-requirement-utils.ts b/catalog-ui/src/app/ng2/pages/composition/graph/utils/match-capability-requirement-utils.ts
index ec7f8d1ab6..a182932b1d 100644
--- a/catalog-ui/src/app/ng2/pages/composition/graph/utils/match-capability-requirement-utils.ts
+++ b/catalog-ui/src/app/ng2/pages/composition/graph/utils/match-capability-requirement-utils.ts
@@ -174,8 +174,12 @@ export class MatchCapabilitiesRequirementsUtils {
return false;
}
- private isRequirementFulfilled(fromNodeId: string, requirement: any, links: CompositionCiLinkBase[]): boolean {
- return _.some(links, {
+ private isRequirementFulfilled(fromNodeId: string, requirement: Requirement, links: CompositionCiLinkBase[]): boolean {
+ if (!requirement.maxOccurrences || requirement.maxOccurrences === 'UNBOUNDED') {
+ return false;
+ }
+
+ let list =_.filter(links, {
relation: {
fromNode: fromNodeId,
relationships: [{
@@ -190,6 +194,8 @@ export class MatchCapabilitiesRequirementsUtils {
}]
}
});
+
+ return list.length >= parseInt(requirement.maxOccurrences);
}
}