33from datetime import datetime
44from pathlib import Path
55from typing import Any , Dict , List , Mapping , Optional , Sequence , Tuple , Union , cast
6- from typing_extensions import Self
76
87import bson
98from google .protobuf .struct_pb2 import Struct
109from grpclib .client import Channel , Stream
10+ from typing_extensions import Self
1111
1212from viam import logging
1313from viam .proto .app .data import (
5555 TabularDataByMQLResponse ,
5656 TabularDataBySQLRequest ,
5757 TabularDataBySQLResponse ,
58- TabularDataSourceType ,
5958 TabularDataSource ,
59+ TabularDataSourceType ,
6060 TagsByFilterRequest ,
6161 TagsByFilterResponse ,
6262)
63+ from viam .proto .app .datapipelines import (
64+ CreateDataPipelineRequest ,
65+ CreateDataPipelineResponse ,
66+ DataPipelineRunStatus ,
67+ DataPipelinesServiceStub ,
68+ DeleteDataPipelineRequest ,
69+ GetDataPipelineRequest ,
70+ GetDataPipelineResponse ,
71+ ListDataPipelineRunsRequest ,
72+ ListDataPipelineRunsResponse ,
73+ ListDataPipelinesRequest ,
74+ ListDataPipelinesResponse ,
75+ )
76+ from viam .proto .app .datapipelines import (
77+ DataPipeline as ProtoDataPipeline ,
78+ )
79+ from viam .proto .app .datapipelines import (
80+ DataPipelineRun as ProtoDataPipelineRun ,
81+ )
6382from viam .proto .app .dataset import (
6483 CreateDatasetRequest ,
6584 CreateDatasetResponse ,
87106 StreamingDataCaptureUploadResponse ,
88107 UploadMetadata ,
89108)
90-
91- from viam .proto .app .datapipelines import (
92- CreateDataPipelineRequest ,
93- CreateDataPipelineResponse ,
94- DataPipeline as ProtoDataPipeline ,
95- DataPipelineRun as ProtoDataPipelineRun ,
96- DataPipelinesServiceStub ,
97- DataPipelineRunStatus ,
98- DeleteDataPipelineRequest ,
99- GetDataPipelineRequest ,
100- GetDataPipelineResponse ,
101- ListDataPipelineRunsRequest ,
102- ListDataPipelineRunsResponse ,
103- ListDataPipelinesRequest ,
104- ListDataPipelinesResponse ,
105- )
106-
107-
108109from viam .utils import ValueTypes , _alias_param , create_filter , datetime_to_timestamp , struct_to_dict
109110
110111LOGGER = logging .getLogger (__name__ )
@@ -241,7 +242,6 @@ def resource_subtype(self) -> str:
241242 )
242243 return self .resource_api
243244
244-
245245 @dataclass
246246 class DataPipeline :
247247 """Represents a data pipeline and its associated metadata."""
@@ -286,6 +286,7 @@ def from_proto(cls, data_pipeline: ProtoDataPipeline) -> Self:
286286 @dataclass
287287 class DataPipelineRun :
288288 """Represents a data pipeline run and its associated metadata."""
289+
289290 id : str
290291 """The ID of the data pipeline run"""
291292
@@ -342,17 +343,9 @@ async def next_page(self) -> "DataClient.DataPipelineRunsPage":
342343 if not self .next_page_token :
343344 # no token, return empty next page
344345 return DataClient .DataPipelineRunsPage (
345- _client = self ._client ,
346- pipeline_id = self .pipeline_id ,
347- page_size = self .page_size ,
348- runs = [],
349- next_page_token = ""
346+ _client = self ._client , pipeline_id = self .pipeline_id , page_size = self .page_size , runs = [], next_page_token = ""
350347 )
351- return await self ._client ._list_data_pipeline_runs (
352- self .pipeline_id ,
353- self .page_size ,
354- self .next_page_token
355- )
348+ return await self ._client ._list_data_pipeline_runs (self .pipeline_id , self .page_size , self .next_page_token )
356349
357350 @classmethod
358351 def from_proto (cls , data_pipeline_runs_page : ListDataPipelineRunsResponse , client : "DataClient" , page_size : int ) -> Self :
@@ -491,9 +484,12 @@ async def tabular_data_by_sql(self, organization_id: str, sql_query: str) -> Lis
491484
492485 @_alias_param ("query" , param_alias = "mql_binary" )
493486 async def tabular_data_by_mql (
494- self , organization_id : str , query : Union [List [bytes ], List [Dict [str , Any ]]], use_recent_data : Optional [bool ] = None ,
487+ self ,
488+ organization_id : str ,
489+ query : Union [List [bytes ], List [Dict [str , Any ]]],
490+ use_recent_data : Optional [bool ] = None ,
495491 tabular_data_source_type : TabularDataSourceType .ValueType = TabularDataSourceType .TABULAR_DATA_SOURCE_TYPE_STANDARD ,
496- pipeline_id : Optional [str ] = None
492+ pipeline_id : Optional [str ] = None ,
497493 ) -> List [Dict [str , Union [ValueTypes , datetime ]]]:
498494 """Obtain unified tabular data and metadata, queried with MQL.
499495
@@ -1928,7 +1924,7 @@ async def delete_data_pipeline(self, id: str) -> None:
19281924 request = DeleteDataPipelineRequest (id = id )
19291925 await self ._data_pipelines_client .DeleteDataPipeline (request , metadata = self ._metadata )
19301926
1931- async def list_data_pipeline_runs (self , id : str , page_size : int = 10 ) -> DataPipelineRunsPage :
1927+ async def list_data_pipeline_runs (self , id : str , page_size : int = 10 ) -> DataPipelineRunsPage :
19321928 """List all of the data pipeline runs for a data pipeline.
19331929
19341930 ::
@@ -1946,9 +1942,7 @@ async def list_data_pipeline_runs(self, id: str, page_size: int =10) -> DataPipe
19461942 """
19471943 return await self ._list_data_pipeline_runs (id , page_size )
19481944
1949- async def _list_data_pipeline_runs (
1950- self , id : str , page_size : int , page_token : str = ""
1951- ) -> DataPipelineRunsPage :
1945+ async def _list_data_pipeline_runs (self , id : str , page_size : int , page_token : str = "" ) -> DataPipelineRunsPage :
19521946 """Internal method to list data pipeline runs with pagination.
19531947
19541948 Args:
@@ -1959,15 +1953,8 @@ async def _list_data_pipeline_runs(
19591953 Returns:
19601954 DataPipelineRunsPage: A page of data pipeline runs with pagination support
19611955 """
1962- request = ListDataPipelineRunsRequest (
1963- id = id ,
1964- page_size = page_size ,
1965- page_token = page_token
1966- )
1967- response : ListDataPipelineRunsResponse = await self ._data_pipelines_client .ListDataPipelineRuns (
1968- request ,
1969- metadata = self ._metadata
1970- )
1956+ request = ListDataPipelineRunsRequest (id = id , page_size = page_size , page_token = page_token )
1957+ response : ListDataPipelineRunsResponse = await self ._data_pipelines_client .ListDataPipelineRuns (request , metadata = self ._metadata )
19711958 return DataClient .DataPipelineRunsPage .from_proto (response , self , page_size )
19721959
19731960 @staticmethod
0 commit comments