registerDependentPod method
Register a dependent pod for the given pod.
This method tracks dependency relationships for proper destruction ordering (dependents are destroyed before their dependencies).
name: The name of the pod that is depended upon
dependentName: The name of the pod that has the dependency
Example:
// Register that OrderService depends on UserService
registry.registerDependentPod('userService', 'orderService');
Implementation
@protected
void registerDependentPod(String name, String dependentName) {
final canonicalName = PodUtils.transformedName(name);
synchronized(_dependentPods, () {
final dependents = _dependentPods.putIfAbsent(canonicalName, () => <String>{});
if (!dependents.add(dependentName)) {
return;
}
});
synchronized(_dependenciesForPods, () {
final dependenciesForPod = _dependenciesForPods.putIfAbsent(dependentName, () => <String>{});
dependenciesForPod.add(canonicalName);
});
}