@@ -34,6 +34,7 @@ def __init__(
3434 workbook_id : Optional [str ] = None ,
3535 datasource_id : Optional [str ] = None ,
3636 flow_run : Optional [FlowRunItem ] = None ,
37+ updated_at : Optional ["datetime.datetime" ] = None ,
3738 ):
3839 self ._id = id_
3940 self ._type = job_type
@@ -47,6 +48,7 @@ def __init__(
4748 self ._workbook_id = workbook_id
4849 self ._datasource_id = datasource_id
4950 self ._flow_run = flow_run
51+ self ._updated_at = updated_at
5052
5153 @property
5254 def id (self ) -> str :
@@ -113,9 +115,13 @@ def flow_run(self):
113115 def flow_run (self , value ):
114116 self ._flow_run = value
115117
118+ @property
119+ def updated_at (self ) -> Optional ["datetime.datetime" ]:
120+ return self ._updated_at
121+
116122 def __repr__ (self ):
117123 return (
118- "<Job#{_id} {_type} created_at({_created_at}) started_at({_started_at}) completed_at({_completed_at})"
124+ "<Job#{_id} {_type} created_at({_created_at}) started_at({_started_at}) updated_at({_updated_at}) completed_at({_completed_at})"
119125 " progress ({_progress}) finish_code({_finish_code})>" .format (** self .__dict__ )
120126 )
121127
@@ -144,6 +150,7 @@ def _parse_element(cls, element, ns):
144150 datasource = element .find (".//t:datasource[@id]" , namespaces = ns )
145151 datasource_id = datasource .get ("id" ) if datasource is not None else None
146152 flow_run = None
153+ updated_at = parse_datetime (element .get ("updatedAt" , None ))
147154 for flow_job in element .findall (".//t:runFlowJobType" , namespaces = ns ):
148155 flow_run = FlowRunItem ()
149156 flow_run ._id = flow_job .get ("flowRunId" , None )
@@ -163,6 +170,7 @@ def _parse_element(cls, element, ns):
163170 workbook_id ,
164171 datasource_id ,
165172 flow_run ,
173+ updated_at ,
166174 )
167175
168176
0 commit comments