
    
                         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
\	R                  5      rS rS rg)z<Wrapper around serverless_operations DeleteFoo for surfaces.    )absolute_import)division)unicode_literals)
exceptions)waiter)	platforms)progress_trackerc                   6    \ rS rSrSrS rS rS rS rS r	Sr
g	)
DeletionPoller   z!Polls for deletion of a resource.c                     Xl         SU l        g)z%Supply getter as the resource getter.N_getter_ret)selfgetters     .lib/googlecloudsdk/command_lib/run/deletion.py__init__DeletionPoller.__init__   s    LDI    c                 L    US L =(       d    UR                   R                  5       $ N)
conditionsIsFailedr   objs     r   IsDoneDeletionPoller.IsDone$   s    $;3#..1133r   c                      U R                  U5      U l        U R                  $ ! [        R                   a    S U l         U R                  $ f = fr   )r   r   api_exceptionsHttpNotFoundError)r   refs     r   PollDeletionPoller.Poll'   sK    ,,s#di 99 ++ di99s   $ AAc                    U R                   (       aq  U R                   R                  (       aV  U R                   R                  R                  5       (       d-  U R                   R                  R                  5       =(       d    S$ g)N )r   r   IsReadyDescriptiveMessage)r   s    r   
GetMessageDeletionPoller.GetMessage.   sO    		dii**II  ((**YY!!446<"<r   c                     U$ r    r   s     r   	GetResultDeletionPoller.GetResult4   s    Jr   r   N)__name__
__module____qualname____firstlineno____doc__r   r   r#   r)   r-   __static_attributes__r,   r   r   r   r      s    )
4r   r   c                 X   [        U5      (       a	  U" U 5        g[        U5      n[        R                  " SR	                  U R                  5       5      UR                  S9   U" U 5        [        R                  " X@5      nU(       a  UR                  5       (       aB  [        R                  " SR	                  U R                  5       UR                  5       5      5      e[        R                  " SR	                  U R                  5       5      5      e SSS5        g! , (       d  f       g= f)zFDeletes a resource for a surface, including a pretty progress tracker.NzDeleting [{}])messagedetail_message_callbackzFailed to delete [{}]: {}.zFailed to delete [{}].)AsyncOrDefaultr   r	   ProgressTrackerformatNamer)   r   PollUntilDoneserverless_exceptionsDeletionFailedError)r"   r   deleterasync_pollerress         r   DeleterC   8   s    FCL
&!&''$$SXXZ0$//1 CL


v
+C
					#77(//
060A0A0CEF 	F $77$++CHHJ79 	9 1 1 1s   !B0D
D)c                 X    U c&  [         R                  " 5       [         R                  :g  $ U $ r   )r   GetPlatformPLATFORM_MANAGED)r@   s    r   r8   r8   M   s&    ^  "i&@&@@@	-r   N)r3   
__future__r   r   r   apitools.base.pyr   r    googlecloudsdk.api_lib.utilr   googlecloudsdk.command_lib.runr=   r   googlecloudsdk.core.consoler	   OperationPollerr   rC   r8   r,   r   r   <module>rM      s?    C &  ' 9 . N 4 8V++ 89*r   