2121
2222
2323class streams_provider (Operator ):
24- r"""Creates streams (files with cache) from the data sources.
24+ r"""Create streams (cached file handles) based on provided data sources.
25+
26+ - When the data sources contain a single result key, an internal
27+ provider is instantiated for that namespace to create streams.
28+ - When multiple result keys are present, streams are aggregated from
29+ each namespace-specific internal provider.
30+ - Upstream data sources (if defined) are opened and attached to the
31+ output as upstream streams.
32+
33+ When the ``permissive`` configuration is enabled, the operator silently
34+ skips result files that cannot be opened or have unsupported namespaces,
35+ continuing with valid files. If ``permissive`` is disabled (default),
36+ errors are thrown for invalid files.
37+
38+ Throws a runtime error if data sources are missing or if all result
39+ files are invalid.
2540
2641
2742 Inputs
2843 ------
2944 data_sources: DataSources
45+ Data sources describing one or more result files. Supports single or multiple result keys; may include upstream data sources.
46+
47+ **Error conditions when `permissive` config is disabled:**
48+ - Throws `std::runtime_error` with message "StreamProvider: empty namespace for result key '<key>'" if a result file has no namespace.
49+ - Throws `std::runtime_error` with message "StreamProvider: operator <namespace>::stream_provider not found." if the namespace is not supported.
50+ - If all result files are invalid, throws an error even in permissive mode.
3051
3152 Outputs
3253 -------
3354 streams_container: StreamsContainer
55+ Streams created from the input data sources, including aggregated streams across namespaces and any upstream streams.
3456
3557 Examples
3658 --------
@@ -65,7 +87,22 @@ def __init__(self, data_sources=None, config=None, server=None):
6587
6688 @staticmethod
6789 def _spec () -> Specification :
68- description = r"""Creates streams (files with cache) from the data sources.
90+ description = r"""Create streams (cached file handles) based on provided data sources.
91+
92+ - When the data sources contain a single result key, an internal
93+ provider is instantiated for that namespace to create streams.
94+ - When multiple result keys are present, streams are aggregated from
95+ each namespace-specific internal provider.
96+ - Upstream data sources (if defined) are opened and attached to the
97+ output as upstream streams.
98+
99+ When the ``permissive`` configuration is enabled, the operator silently
100+ skips result files that cannot be opened or have unsupported namespaces,
101+ continuing with valid files. If ``permissive`` is disabled (default),
102+ errors are thrown for invalid files.
103+
104+ Throws a runtime error if data sources are missing or if all result
105+ files are invalid.
69106"""
70107 spec = Specification (
71108 description = description ,
@@ -74,15 +111,20 @@ def _spec() -> Specification:
74111 name = "data_sources" ,
75112 type_names = ["data_sources" ],
76113 optional = False ,
77- document = r"""""" ,
114+ document = r"""Data sources describing one or more result files. Supports single or multiple result keys; may include upstream data sources.
115+
116+ **Error conditions when `permissive` config is disabled:**
117+ - Throws `std::runtime_error` with message "StreamProvider: empty namespace for result key '<key>'" if a result file has no namespace.
118+ - Throws `std::runtime_error` with message "StreamProvider: operator <namespace>::stream_provider not found." if the namespace is not supported.
119+ - If all result files are invalid, throws an error even in permissive mode.""" ,
78120 ),
79121 },
80122 map_output_pin_spec = {
81123 0 : PinSpecification (
82124 name = "streams_container" ,
83125 type_names = ["streams_container" ],
84126 optional = False ,
85- document = r"""""" ,
127+ document = r"""Streams created from the input data sources, including aggregated streams across namespaces and any upstream streams. """ ,
86128 ),
87129 },
88130 )
@@ -155,6 +197,13 @@ def __init__(self, op: Operator):
155197 def data_sources (self ) -> Input [DataSources ]:
156198 r"""Allows to connect data_sources input to the operator.
157199
200+ Data sources describing one or more result files. Supports single or multiple result keys; may include upstream data sources.
201+
202+ **Error conditions when `permissive` config is disabled:**
203+ - Throws `std::runtime_error` with message "StreamProvider: empty namespace for result key '<key>'" if a result file has no namespace.
204+ - Throws `std::runtime_error` with message "StreamProvider: operator <namespace>::stream_provider not found." if the namespace is not supported.
205+ - If all result files are invalid, throws an error even in permissive mode.
206+
158207 Returns
159208 -------
160209 input:
@@ -194,6 +243,8 @@ def __init__(self, op: Operator):
194243 def streams_container (self ) -> Output [StreamsContainer ]:
195244 r"""Allows to get streams_container output of the operator
196245
246+ Streams created from the input data sources, including aggregated streams across namespaces and any upstream streams.
247+
197248 Returns
198249 -------
199250 output:
0 commit comments