
    C                     
   d Z ddlmZ ddlmZ ddlmZ ddl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 ej                    ej"                  ej$                  j&                         G d dej(                                      Zy)z,Command to delete Transfer Appliance Orders.    )absolute_import)division)unicode_literalsN)operations_util)apis)
exceptions)base)resource_argsc                   Z    e Zd ZdZdddZed        Z ej                  d      d        Z	y)	Deletez!Delete transfer appliance orders.z.      Delete transfer appliance orders.
      z      To delete an order, run:

        $ {command} ORDER

      To delete an order but keep the associated appliance records:

        $ {command} ORDER --keep-appliances
      )DESCRIPTIONEXAMPLESc                     t        j                  | t         j                  j                         | j	                  ddd       y )N)verbz--keep-appliances
store_truezDKeep appliances associated with the order rather than deleting them.)actionhelp)r
   add_order_resource_argResourceVerbDELETEadd_argument)parsers    0lib/surface/transfer/appliances/orders/delete.pyArgszDelete.Args4   s?    ((]//668
	      z-Status code: {status_code}. {status_message}.c                    t        j                  dd      }t        j                  dd      }|j                  j                  j                         }|j                  s|j                  |j                               }|j                  j                  |      }|j                  D ]`  }|j                  j                  |j                  |t        j                          j"                              }t%        j&                  |d       b |j                  j                  |j)                  |j                         t        j                          j"                              }t%        j&                  |d      S )Ntransferappliancev1alpha1)name)request)r   	requestIdzdelete appliancezdelete order)r   GetClientInstanceGetMessagesModuleCONCEPTSorderParsekeep_appliances2TransferapplianceProjectsLocationsOrdersGetRequestRelativeNameprojects_locations_ordersGet
appliancesprojects_locations_appliancesr   9TransferapplianceProjectsLocationsAppliancesDeleteRequestuuiduuid4hexr   wait_then_yield_nothing5TransferapplianceProjectsLocationsOrdersDeleteRequest)	selfargsclientmessages	order_refr    r%   appliance_name	operations	            r   Runz
Delete.Run@   sC    ##$7DF%%&9:FH##))+IKK%%' L )g..2272Ce!,,.88??NN#tzz|/?/? O AB	 	//	;MN	 -
 0077FF'')TZZ\5E5E 	G 	GHI 229nMMr   N)
__name__
__module____qualname____doc__detailed_helpstaticmethodr   gcloud_exception CatchHTTPErrorRaiseHTTPExceptionr;    r   r   r   r      sS     *

-" 	 	 5445NNr   r   )r?   
__future__r   r   r   r/   *googlecloudsdk.api_lib.transfer.appliancesr   googlecloudsdk.api_lib.utilr   r   rB   googlecloudsdk.callioper	   .googlecloudsdk.command_lib.transfer.appliancesr
   DefaultUniverseOnlyReleaseTracksReleaseTrackALPHADeleteCommandr   rD   r   r   <module>rO      sp    3 &  '  F , F ( H D%%++,4NT 4N - 4Nr   