diff options
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.ts | 10 |
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); } } |