aboutsummaryrefslogtreecommitdiff
path: root/src/hydrilla/proxy/simple_dependency_satisfying.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/hydrilla/proxy/simple_dependency_satisfying.py')
-rw-r--r--src/hydrilla/proxy/simple_dependency_satisfying.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/hydrilla/proxy/simple_dependency_satisfying.py b/src/hydrilla/proxy/simple_dependency_satisfying.py
index a5431f9..e5de8c6 100644
--- a/src/hydrilla/proxy/simple_dependency_satisfying.py
+++ b/src/hydrilla/proxy/simple_dependency_satisfying.py
@@ -96,8 +96,10 @@ class ComputedPayload:
@dc.dataclass
class MappingChoice:
- info: item_infos.MappingInfo
- required: bool = False
+ info: item_infos.MappingInfo
+ required: bool = False
+ mapping_dependencies: t.Sequence[item_infos.MappingInfo] = ()
+
payloads: dict[url_patterns.ParsedPattern, ComputedPayload] = \
dc.field(default_factory=dict)
@@ -297,6 +299,11 @@ class _ComputationData:
for identifier in required_mappings:
choices[identifier].required = True
+ for mapping_choice in choices.values():
+ depended_set = mapping_deps[mapping_choice.info.identifier]
+ mapping_choice.mapping_dependencies = \
+ tuple(choices[identifier].info for identifier in depended_set)
+
return choices
def compute_payloads(