diff options
Diffstat (limited to 'src/hydrilla/proxy/simple_dependency_satisfying.py')
-rw-r--r-- | src/hydrilla/proxy/simple_dependency_satisfying.py | 11 |
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( |