1414
1515from datetime import datetime
1616from enum import Enum
17- from typing import List
17+ from typing import List , Mapping , TypeVar
1818from nvidia_clara .grpc import common_pb2 , jobs_pb2
1919import nvidia_clara .payload_types as payload_types
2020import nvidia_clara .pipeline_types as pipeline_types
2121
22+ T = TypeVar ('T' )
23+
2224
2325class JobPriority (Enum ):
2426 """
@@ -346,7 +348,8 @@ class JobDetails(JobInfo):
346348 def __init__ (self , job_id : JobId = None , job_state : JobState = None , job_status : JobStatus = None ,
347349 job_priority : JobPriority = None , date_created : datetime = None , date_started : datetime = None ,
348350 date_stopped : datetime = None , name : str = None , payload_id : payload_types .PayloadId = None ,
349- pipeline_id : pipeline_types .PipelineId = None , messages : List [str ] = None ):
351+ pipeline_id : pipeline_types .PipelineId = None , operator_details : Mapping [str , Mapping [str , T ]] = None ,
352+ messages : List [str ] = None ):
350353 super ().__init__ (
351354 job_id = job_id ,
352355 job_state = job_state ,
@@ -360,6 +363,7 @@ def __init__(self, job_id: JobId = None, job_state: JobState = None, job_status:
360363 pipeline_id = pipeline_id
361364 )
362365 self ._messages = messages
366+ self ._operator_details = operator_details
363367
364368 @property
365369 def messages (self ) -> List [str ]:
@@ -370,3 +374,13 @@ def messages(self) -> List[str]:
370374 def messages (self , messages : List [str ]):
371375 """List of messages reported by the job."""
372376 self ._messages = messages
377+
378+ @property
379+ def operator_details (self ) -> Mapping [str , Mapping [str , T ]]:
380+ """Dictionary mapping operator names to operator details"""
381+ return self ._operator_details
382+
383+ @operator_details .setter
384+ def operator_details (self , operator_details : Mapping [str , Mapping [str , T ]]):
385+ """Dictionary mapping operator names to operator details"""
386+ self ._operator_details = operator_details
0 commit comments