
    
                        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dlmZ dd	lmZ dd
lmZ ddlmZ ddZ ej(                  ej*                  j,                         G d dej.                               Z ej(                  ej*                  j2                  ej*                  j4                         G d de             Zy)z*Cloud Pub/Sub subscription delete command.    )absolute_import)division)unicode_literals)
exceptions)subscriptions)base)resource_args)util)log)
propertiesc           	   #     K   t        j                         }g }| j                  j                  j	                         D ]~  }	 |j                  |      }|j&                  j)                  |j                               }|rt        j*                  |      }t        j                  |j                         d       |  |rt        j,                  |d      y# t        j                  $ r}t        j                  |      }t        j                  |j                         dt        j                  |j                  j                                |j#                  |j$                         Y d}~0d}~ww xY ww)z"Deletes one or more subscriptions.subscription)kindfailedN)name)r   delete)r   SubscriptionsClientCONCEPTSr   ParseDeleteapi_ex	HttpErrorr   HttpExceptionr   DeletedResourceRelativeNamer
   CreateFailureErrorMessagepayloadstatus_messageappendsubscriptionsIdmessagesSubscriptionSubscriptionDisplayDictRequestsFailedError)	argslegacy_outputclientr   subscription_refresulterrorexcr   s	            *lib/surface/pubsub/subscriptions/delete.py_Runr-       s7    ,,.&&--44::<
}}-.f ??//**, 0 .L ++L9f(557nM
L+ =. 

"
"68
44 '  $$U+c	

'
'
)//0J0JK
 mm$445s1   >E5CBE5E2*A=E-'E5-E22E5c                   &    e Zd ZdZed        Zd Zy)r   0Deletes one or more Cloud Pub/Sub subscriptions.c                 4    t        j                  | dd       y )Nz
to delete.T)plural)r	   AddSubscriptionResourceArg)parsers    r,   ArgszDelete.ArgsD   s    ,,V\$O    c                     t        |      S )N)r-   )selfr%   s     r,   Runz
Delete.RunH   s    :r5   N)__name__
__module____qualname____doc__staticmethodr4   r8    r5   r,   r   r   @   s    8P Pr5   r   c                       e Zd ZdZd Zy)
DeleteBetar/   c                     t         j                  j                  j                  j	                         }t        ||      S )N)r&   )r   VALUESpubsubr&   GetBoolr-   )r7   r%   r&   s      r,   r8   zDeleteBeta.RunP   s/    %%,,::BBDMM22r5   N)r9   r:   r;   r<   r8   r>   r5   r,   r@   r@   L   s
    83r5   r@   N)F)r<   
__future__r   r   r   apitools.base.pyr   r   googlecloudsdk.api_lib.pubsubr   googlecloudsdk.api_lib.utilgooglecloudsdk.callioper   !googlecloudsdk.command_lib.pubsubr	   r
   googlecloudsdk.corer   r   r-   ReleaseTracksReleaseTrackGADeleteCommandr   BETAALPHAr@   r>   r5   r,   <module>rR      s    1 &  ' 1 7 2 ( ; 2 # *5@ D%%(()T  * D%%**D,=,=,C,CD3 3 E3r5   