
    U                         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SKJ	r	  SSK
Jr  SS	K
Jr  SS
KJr   " S S\5      rg)z/Utilities for AI Platform Tensorboard runs API.    )absolute_import)division)unicode_literals)
list_pager)apis)common_args)	constants)errors)labels_utilc                   j    \ rS rSrSrSS\R                  4S jrS rS r	SS jr
S rS	 rS
 rS rSrg)TensorboardRunsClient   z>High-level client for the AI Platform Tensorboard run surface.Nc                    U=(       d6    [         R                  " [        R                  [        R                  U   5      U l        U=(       d    U R
                  R                  U l        U R
                  R                  U l	        X0l
        g N)r   GetClientInstancer	   AI_PLATFORM_API_NAMEAI_PLATFORM_API_VERSIONclientMESSAGES_MODULEmessages0projects_locations_tensorboards_experiments_runs_service_version)selfr   r   versions       8lib/googlecloudsdk/api_lib/ai/tensorboard_runs/client.py__init__TensorboardRunsClient.__init__    sb      4D22&&))'24DK ; ; ;DMKKPPDMM    c                 $    U R                  X5      $ r   )
CreateBeta)r   tensorboard_exp_refargss      r   CreateTensorboardRunsClient.Create+   s    ??.55r   c           	      b   [         R                  " UU R                  R                  R                  5      nU R                  R                  UR                  5       U R                  R                  UR                  UR                  US9UR                  S9nU R                  R                  U5      $ )zCreate a new Tensorboard run.)displayNamedescriptionlabels)parent*googleCloudAiplatformV1beta1TensorboardRuntensorboardRunId)r   ParseCreateArgsr   *GoogleCloudAiplatformV1beta1TensorboardRunLabelsValueCAiplatformProjectsLocationsTensorboardsExperimentsRunsCreateRequestRelativeNamedisplay_namer(   tensorboard_run_idr   r$   )r   r"   r#   r)   requests        r   r!    TensorboardRunsClient.CreateBeta.   s    ((@@LLNF mm__"//137==	3	3))(( 
4 
 00 ` 2G ==((r   c           	          U R                   R                  UR                  5       [        R                  " U5      S9n[
        R                  " U R                  USSUUS9$ )N)r*   orderBytensorboardRunspageSize)fieldbatch_size_attribute
batch_sizelimit)r   AAiplatformProjectsLocationsTensorboardsExperimentsRunsListRequestr1   r   ParseSortByArgr   YieldFromListr   )r   r"   r=   	page_sizesort_byr4   s         r   ListTensorboardRunsClient.List=   sa    mm]]"//1**73 ^ 5G ##' r   c                     U R                   R                  UR                  5       S9nU R                  R	                  U5      $ N)name)r   @AiplatformProjectsLocationsTensorboardsExperimentsRunsGetRequestr1   r   Getr   tensorboard_run_refr4   s      r   rI   TensorboardRunsClient.GetI   s=    mm\\ --/ ] 1G==W%%r   c                     U R                   R                  UR                  5       S9nU R                  R	                  U5      $ rF   )r   CAiplatformProjectsLocationsTensorboardsExperimentsRunsDeleteRequestr1   r   DeleterJ   s      r   rO   TensorboardRunsClient.DeleteN   sB    	L	L$113 
M 
5  ==((r   c                 $    U R                  X5      $ r   )	PatchBeta)r   rK   r#   s      r   PatchTensorboardRunsClient.PatchU   s    >>-44r   c                   ^ ^ T R                   R                  5       n/ nU U4S jn[        R                  " UT R                   R                  R                  U5      nUR
                  (       a"  UR                  Ul        UR                  S5        UR                  b"  UR                  Ul	        UR                  S5        UR                  b"  UR                  Ul
        UR                  S5        U(       d  [        R                  " S5      eT R                   R                  TR                  5       USR                  U5      S9nT R                   R#                  U5      $ )zUpdate a Tensorboard run.c                  :   > T R                  T5      R                  $ r   )rI   r)   )r   rK   s   r   	GetLabels2TensorboardRunsClient.PatchBeta.<locals>.GetLabels]   s    XX)*111r   r)   r2   r(   zNo updates requested.,)rG   r+   
updateMask)r   r.   r   ProcessUpdateArgsLazyr/   needs_updater)   appendr2   r'   r(   r
   NoFieldsSpecifiedErrorBAiplatformProjectsLocationsTensorboardsExperimentsRunsPatchRequestr1   joinr   rS   )r   rK   r#   tensorboard_runupdate_maskrW   labels_updater4   s   ``      r   rR   TensorboardRunsClient.PatchBetaX   s"   mmNNPOK2  55@@LLM !!,33o"$$($5$5o!(#$($4$4o!'))*ABBmm^^ --/3B88K( _ *G ==w''r   )r   r   r   r   )i  2   N)__name__
__module____qualname____firstlineno____doc__r	   BETA_VERSIONr   r$   r!   rC   rI   rO   rS   rR   __static_attributes__ r   r   r   r      s>    F  --	6)
&
)5(r   r   N)rj   
__future__r   r   r   apitools.base.pyr   googlecloudsdk.api_lib.utilr   r   googlecloudsdk.command_lib.air	   r
   $googlecloudsdk.command_lib.util.argsr   objectr   rm   r   r   <module>rt      s3    6 &  ' ' , 3 3 0 <Z(F Z(r   