
                            d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm	Z	 ddl
mZ d	Z ej                  ej                  j                         G d
 dej                                Z ej                  ej                  j$                         G d dej                                Z ej                  ej                  j(                         G d dej                                Zy)z-Command to wait for an operation to complete.    )absolute_import)division)unicode_literals)
operations)base)parser_arguments)cluster_flagszs
To wait for an operation in location ``us-west1'' to complete, run:

$ {command} OPERATION_ID --location=us-west1
c                   H    e Zd ZdZdeiZedej                  fd       Z	d Z
y)	WaitAlpha!Poll an operation for completion.EXAMPLESparserc                 Z    t        j                  | d       t        j                  |        yz!Registers flags for this command.zto wait for completionN)r	   AddOperationResourceArgAddOperationTimeoutr   s    3lib/surface/container/bare_metal/operations/wait.pyArgszWaitAlpha.Args'   s#     ))&2JK%%f-    c                     t        j                         }|j                  j                  j	                         }|j                  ||j                        S )Runs the wait command.)operation_reftimeout)r   OperationsClientCONCEPTSoperation_idParseWaitr   selfargsoperation_clientr   s       r   RunzWaitAlpha.Run-   sJ    !224MM..446M  #T\\ !  r   N__name__
__module____qualname____doc__	_EXAMPLESdetailed_helpstaticmethodr   ArgumentInterceptorr   r$    r   r   r   r   !   s4    )y)-.#77 . .
r   r   c                   H    e Zd ZdZdeiZedej                  fd       Z	d Z
y)WaitBetar   r   r   c                 0    t        j                  | d       yr   r	   r   r   s    r   r   zWaitBeta.Args<        ))&2JKr   c                     t        j                         }|j                  j                  j	                         }|j                  |      S r   )r   r   r   r   r   r   r   r    s       r   r$   zWaitBeta.RunA   =    !224MM..446M  } ==r   Nr%   r.   r   r   r0   r0   6   7    )y)-L#77 L L>r   r0   c                   H    e Zd ZdZdeiZedej                  fd       Z	d Z
y)r   r   r   r   c                 0    t        j                  | d       yr   r2   r   s    r   r   z	Wait.ArgsN   r3   r   c                     t        j                         }|j                  j                  j	                         }|j                  |      S r5   r6   r    s       r   r$   zWait.RunS   r7   r   Nr%   r.   r   r   r   r   H   r8   r   r   N)r)   
__future__r   r   r   *googlecloudsdk.api_lib.container.gkeonpremr   googlecloudsdk.callioper   r   /googlecloudsdk.command_lib.container.bare_metalr	   r*   ReleaseTracksReleaseTrackALPHACommandr   BETAr0   GAr   r.   r   r   <module>rF      s    4 &  ' A ( 4 I	 D%%++,  -( D%%**+>t|| > ,>" D%%(()>4<< > *>r   