stream.router¶
stream.router ¶
Declarative schema selection and project routing.
Both are config-driven and orthogonal:
- :class:
DeclarativeSchemaSelectormaps a document to schema name(s) via match rules (feed-bound or metadata matchers), unioned, with an optional custom classifier entry point as a fallback. - :class:
DeclarativeRoutermaps a document to project name(s) via axes (e.g. one project perticker).
Custom selectors/routers register via angelo.stream.selectors /
angelo.stream.routers entry points and are used in place of these.
DeclarativeSchemaSelector ¶
Union schema selection from match rules + optional classifier fallback.
Source code in stream/router.py
DeclarativeRouter ¶
Map a document to project(s) from axis definitions.
Source code in stream/router.py
DeclarativeSpineSelector ¶
Union spine selection from match rules + metadata axes, default fallback.
Mirrors :class:DeclarativeSchemaSelector (rules {match, spines}) and
:class:DeclarativeRouter (metadata axes), unioned, falling back to
default when nothing matches. The result is the per-document spine set,
which the pipeline merges with the run-global StreamConfig.spines.