EntityNavigatorScenario
Navigator over scenarios. Edges: scenario -> resources it produces and notes attached to it.
Initialize self. See help(type(self)) for accurate signature.
UnionInverse of propagate_tags for scenario edges: remove SCENARIO_PROPAGATED
copies from produced resources and attached notes, then recurse downstream.
listdict[gws_core.entity_navigator.entity_navigator_type.NavigableEntity, gws_core.tag.entity_tag_list.EntityTagList] | Noneset[gws_core.entity_navigator.entity_navigator_type.NavigableEntity] | NoneReturn the wrapped entities as a set.
setReturn the wrapped entities as a list. Order is not guaranteed (the underlying storage is a set).
listReturn an arbitrary entity from the set, or None if empty.
Useful when the caller knows the navigator wraps a single entity.
OptionalReturn the direct downstream neighbors of the wrapped entities.
Only one hop is followed (no recursion). Entities of any type listed in
requested_entities are merged into a single NavigableEntitySet.
listNavigableEntitySetReturn every entity transitively reachable downstream.
Traverses the lineage graph breadth-first. Each entity is visited once,
annotated with its depth in the returned NavigableEntitySet. Use this
for impact analysis ("what entities would be affected"). Edge-level
provenance is not preserved -- if you need to know which immediate
upstream caused a given downstream to be reached, use propagate_tags
instead.
list[gws_core.entity_navigator.entity_navigator_type.NavigableEntityType] | Nonebool - FalseNavigableEntitySetReturn notes attached to the wrapped scenarios via NoteScenario.
EntityNavigatorNoteReturn all the resources generated by the wrapped scenarios.
EntityNavigatorResourceReturn scenarios that consume any resource produced by the wrapped scenarios.
EntityNavigatorScenarioReturn views of the resources produced by the wrapped scenarios.
EntityNavigatorViewReturn every entity transitively reachable upstream.
Mirror of get_next_entities_recursive but walks the lineage graph in
the opposite direction (towards ancestors).
list[gws_core.entity_navigator.entity_navigator_type.NavigableEntityType] | Nonebool - FalseNavigableEntitySetReturn the direct upstream notes. Empty by default; overridden by subclasses.
EntityNavigatorNoteReturn resources consumed by the wrapped scenarios via input tasks.
Walks TaskModel.source_config_id of the scenarios' input tasks.
EntityNavigatorResourceReturn scenarios that produced any resource consumed by the wrapped scenarios.
EntityNavigatorScenarioReturn the direct upstream views. Empty by default; overridden by subclasses.
EntityNavigatorViewReturn True if at least one entity is wrapped.
boolReturn True if any direct downstream neighbor exists.
list[gws_core.entity_navigator.entity_navigator_type.NavigableEntityType] | NoneboolReturn True if no entities are wrapped.
boolPropagate tags from each wrapped scenario to its produced resources and attached notes,
then recurse downstream. Origin is SCENARIO_PROPAGATED with the upstream scenario's id.
See EntityNavigator.propagate_tags for the cache/visited contract.
listdict[gws_core.entity_navigator.entity_navigator_type.NavigableEntity, gws_core.tag.entity_tag_list.EntityTagList] | Noneset[gws_core.entity_navigator.entity_navigator_type.NavigableEntity] | NoneBuild the appropriate concrete navigator for a single entity, by type and id.
Raises if the entity does not exist or if entity_type is unknown.
NavigableEntityTypestrEntityNavigator