@@ -34,6 +34,7 @@ def __init__(
3434 flow_run : Optional [FlowRunItem ] = None ,
3535 updated_at : Optional [datetime .datetime ] = None ,
3636 workbook_name : Optional [str ] = None ,
37+ datasource_name : Optional [str ] = None ,
3738 ):
3839 self ._id = id_
3940 self ._type = job_type
@@ -49,6 +50,7 @@ def __init__(
4950 self ._flow_run = flow_run
5051 self ._updated_at = updated_at
5152 self ._workbook_name = workbook_name
53+ self ._datasource_name = datasource_name
5254
5355 @property
5456 def id (self ) -> str :
@@ -123,6 +125,10 @@ def updated_at(self) -> Optional[datetime.datetime]:
123125 def workbook_name (self ) -> Optional [str ]:
124126 return self ._workbook_name
125127
128+ @property
129+ def datasource_name (self ) -> Optional [str ]:
130+ return self ._datasource_name
131+
126132 def __str__ (self ):
127133 return (
128134 "<Job#{_id} {_type} created_at({_created_at}) started_at({_started_at}) updated_at({_updated_at}) completed_at({_completed_at})"
@@ -157,6 +163,7 @@ def _parse_element(cls, element, ns):
157163 workbook_name = workbook .get ("name" ) if workbook is not None else None
158164 datasource = element .find (".//t:datasource[@id]" , namespaces = ns )
159165 datasource_id = datasource .get ("id" ) if datasource is not None else None
166+ datasource_name = datasource .get ("name" ) if datasource is not None else None
160167 flow_run = None
161168 updated_at = parse_datetime (element .get ("updatedAt" , None ))
162169 for flow_job in element .findall (".//t:runFlowJobType" , namespaces = ns ):
@@ -180,6 +187,7 @@ def _parse_element(cls, element, ns):
180187 flow_run ,
181188 updated_at ,
182189 workbook_name ,
190+ datasource_name ,
183191 )
184192
185193
0 commit comments