@@ -1074,18 +1074,26 @@ def __repr__(self):
10741074 out = f"<Intake catalog: Stream *REPR_RENDERING_FAILURE* { exc !r} >"
10751075 return out
10761076
1077+ def _to_xarray (self , fill = 'yes' ):
1078+
1079+ def stream_gen ():
1080+ for i in itertools .count ():
1081+ partition = self .read_partition ({'index' : i , 'fill' : fill ,
1082+ 'partition_size' : 'auto' })
1083+ if not partition :
1084+ break
1085+ yield from partition
1086+
1087+ stream = stream_gen ()
1088+
1089+ arraypages = [eventpage_to_arraypage (doc ) for name , doc
1090+ in stream if name == 'event_page' ]
1091+ arraypage = concat_arraypages (array_pages )
1092+ datasetpage = arraypage_to_datasetpage (array_page )
1093+ return datasetpage
1094+
10771095 def _open_dataset (self ):
1078- self ._ds = documents_to_xarray (
1079- start_doc = self ._run_start_doc ,
1080- stop_doc = self ._run_stop_doc ,
1081- descriptor_docs = self ._descriptors ,
1082- get_event_pages = self ._get_event_pages ,
1083- filler = self .fillers ['delayed' ],
1084- get_resource = self ._get_resource ,
1085- lookup_resource_for_datum = self ._lookup_resource_for_datum ,
1086- get_datum_pages = self ._get_datum_pages ,
1087- include = self .include ,
1088- exclude = self .exclude )
1096+ self ._ds = _to_xarray ()['data' ]
10891097
10901098 def read (self ):
10911099 """
@@ -1434,7 +1442,7 @@ def parse_handler_registry(handler_registry):
14341442intake .container .container_map ['bluesky-event-stream' ] = RemoteBlueskyEventStream
14351443
14361444
1437- def concat_dataarray_pages (dataarray_pages ):
1445+ def concat_arraypages (dataarray_pages ):
14381446 """
14391447 Combines a iterable of dataarray_pages to a single dataarray_page.
14401448
@@ -1470,7 +1478,7 @@ def concat_dataarray_pages(dataarray_pages):
14701478 for key in data_keys }}
14711479
14721480
1473- def event_page_to_dataarray_page (event_page , dims = None , coords = None ):
1481+ def eventpage_to_arraypage (event_page , dims = None , coords = None ):
14741482 """
14751483 Converts the event_page's data, timestamps, and filled to xarray.DataArray.
14761484
@@ -1509,7 +1517,7 @@ def event_page_to_dataarray_page(event_page, dims=None, coords=None):
15091517 for key in data_keys }}
15101518
15111519
1512- def dataarray_page_to_dataset_page (dataarray_page ):
1520+ def arraypage_to_datasetpage (dataarray_page ):
15131521
15141522 """
15151523 Converts the dataarray_page's data, timestamps, and filled to xarray.DataSet.
0 commit comments