
                            S r SSKJr  SSKJr  SSKJr  SSKJr	  SSK
Jr  SrS\R                  S	\	R                  4S
 jrS\R"                  4S jrS\\R"                     S	\	R                  4S jr " S S\	R(                  5      rg)z.V2 WorkerPool instance split specific printer.    )List)instance_split)console_attr)custom_printer_base)worker_poolinstancesplitrecordreturnc                     [         R                  " U 5      n[        U5      n[        R                  " [        R
                  " SU4/5      /SS9$ )zTTransforms a worker pool into the output structure of instance split marker classes.Instance Split<   max_column_width)r   GetInstanceSplitPairs_TransformInstanceSplitPairscpSectionLabeled)r	   instance_split_pairssplit_sections      Hlib/googlecloudsdk/command_lib/run/printers/v2/instance_split_printer.py TransformWorkerPoolInstanceSplitr      sK     (==fE./CD-		zz$m4567"
     pairc                 z    [         R                  " 5       nU R                  UR                  U R                  5      4$ )zDTransforms a single InstanceSplitPair into a marker class structure.)r   GetConsoleAttrdisplay_percent	Emphasizedisplay_revision_id)r   consoles     r   _TransformInstanceSplitPairr!   &   s4     '')'


 1 1$2J2J K	LLr   pairsc                 f    [         R                  " [         R                  " S U  5       5      /5      $ )zFTransforms a list of InstanceSplitPairs into a marker class structure.c              3   8   #    U  H  n[        U5      v   M     g 7f)N)r!   ).0ps     r   	<genexpr>/_TransformInstanceSplitPairs.<locals>.<genexpr>2   s     Le9!<<es   )r   r   Table)r"   s    r   r   r   .   s%     
RXXLeLLM	NNr   c                   X   ^  \ rS rSrSrSU 4S jjrS\\R                     4S jr	Sr
U =r$ )InstanceSplitPrinter5   zNPrints the Run v2 WorkerPool instance split in a custom human-readable format.c                 ,   > [         [        U ]  USUS9  g)z3Overrides ResourcePrinter.Print to set single=True.T)singleintermediateN)superr+   Print)self	resourcesr/   	__class__s      r   r1   InstanceSplitPrinter.Print8   s!     

+$\ , r   r	   c                 r    [        U5      n[        R                  " [        R                  " SU4/5      /SS9$ )zZTransform instance split pairs into the output structure of instance split marker classes.r   r   r   )r   r   r   r   )r2   r	   r   s      r   	TransformInstanceSplitPrinter.TransformE   s7    08M::	&67	89B r    )F)__name__
__module____qualname____firstlineno____doc__r1   r   r   InstanceSplitPairr7   __static_attributes____classcell__)r4   s   @r   r+   r+   5   s'    Vd>#C#CD  r   r+   N)r>   typingr   !googlecloudsdk.command_lib.run.v2r   googlecloudsdk.core.consoler   googlecloudsdk.core.resourcer   r   ;googlecloudsdk.generated_clients.gapic_clients.run_v2.typesr   worker_pool_objectsINSTANCE_SPLIT_PRINTER_FORMAT
WorkerPoolr   r   r?   r!   r   CustomPrinterBaser+   r9   r   r   <module>rK      s    5  < 4 B j / **ZZM

*
*MO001OZZO2// r   