Skip to content

Commit 77f1319

Browse files
committed
Independant on uuid or name in dependsOn
1 parent fd1ad5d commit 77f1319

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

yaml-generation/generateDimensions.php

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -86,40 +86,40 @@
8686
unset($dimensionsAggregated[$dimension][$subdimension][$activityName]["evidence"]);
8787
}
8888
if (array_key_exists("dependsOn", $activity)) {
89-
foreach($activity['dependsOn'] as $index => $dependsOn) {
90-
if(!is_string($dependsOn)) {
91-
array_push($errorMsg, "The 'dependsOn' is not a string '" . json_encode($dependsOn) . "' (in $activityName)");
89+
foreach($activity['dependsOn'] as $index => $dependsOnName) {
90+
if(!is_string($dependsOnName)) {
91+
array_push($errorMsg, "The 'dependsOn' is not a string '" . json_encode($dependsOnName) . "' (in $activityName)");
9292
continue;
9393
}
9494

95-
// Swap uuids with activity name
95+
// Load dependsOnName and dependsOnUuid, depending on actual content
9696
$uuidRegExp = "/(uuid:)?\s*([0-9a-f]{6,}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{6,})/";
97-
if (preg_match($uuidRegExp, $dependsOn, $matches)) {
97+
if (preg_match($uuidRegExp, $dependsOnName, $matches)) {
9898
$dependsOnUuid = $matches[2];
99-
$dependsOn = getActivityNameByUuid($dependsOnUuid, $dimensionsAggregated);
100-
if (is_null($dependsOn)) {
99+
$dependsOnName = getActivityNameByUuid($dependsOnUuid, $dimensionsAggregated);
100+
if (is_null($dependsOnName)) {
101101
array_push($errorMsg,"DependsOn non-existing activity uuid: $dependsOnUuid (in activity: '$activityName')");
102102
} else if ($matches[1] != "") {
103103
echo "WARNING: DependsOn is prefixed by deprecated 'uuid:' for $dependsOnUuid (in activity: '$activityName'). Use activity name, or the uuid only\n";
104-
}
105-
106-
// Trick emit_yaml() to have uuid plus a comment in a string. Removed in post-processing below.
107-
$dimensionsAggregated[$dimension][$subdimension][$activityName]["dependsOn"][$index] = "{ $dependsOnUuid # $dependsOn }";
108-
104+
}
109105
} else {
110-
if (is_null(getUuidByActivityName($dependsOn, $dimensionsAggregated))) {
111-
array_push($errorMsg,"DependsOn non-existing activity: '$dependsOn' (in activity: $activityName)");
106+
$dependsOnUuid = getUuidByActivityName($dependsOnName, $dimensionsAggregated);
107+
if (is_null(getUuidByActivityName($dependsOnName, $dimensionsAggregated))) {
108+
array_push($errorMsg,"DependsOn non-existing activity: '$dependsOnName' (in activity: $activityName)");
112109
}
113110
}
111+
// Trick emit_yaml() to have uuid plus a comment in a string. Removed in post-processing below.
112+
$dimensionsAggregated[$dimension][$subdimension][$activityName]["dependsOn"][$index] = "{ $dependsOnUuid # $dependsOnName }";
113+
114114

115115
// Build dependency graph
116116
if (!array_key_exists($activityName, $activityIndex)) {
117117
$activityIndex[$activityName] = count($activityIndex);
118118
}
119-
if (!array_key_exists($dependsOn, $activityIndex)) {
120-
$activityIndex[$dependsOn] = count($activityIndex);
119+
if (!array_key_exists($dependsOnName, $activityIndex)) {
120+
$activityIndex[$dependsOnName] = count($activityIndex);
121121
}
122-
array_push_item_to($dependencies, $activityIndex[$dependsOn], $activityIndex[$activityName]);
122+
array_push_item_to($dependencies, $activityIndex[$dependsOnName], $activityIndex[$activityName]);
123123

124124
}
125125
}

0 commit comments

Comments
 (0)