
    X                         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KJr  SSKJr  SSKJr  SSKJr  \R&                   " S S\R(                  5      5       rg)z2Implementation of rb command for deleting buckets.    )absolute_import)division)unicode_literals)base)errors_util)flags)name_expansion)plurality_checkable_iterator)storage_url)task_executor)task_graph_executor)task_status)delete_task_iterator_factoryc                   8    \ rS rSrSrSSS.r\S 5       rS rSr	g	)
Delete!   zDeletes Cloud Storage buckets.z8
      Deletes one or more Cloud Storage buckets.
      z

      Delete a Google Cloud Storage bucket named "my-bucket":

        $ {command} gs://my-bucket

      Delete two buckets:

        $ {command} gs://my-bucket gs://my-other-bucket
      )DESCRIPTIONEXAMPLESc                 ~    U R                  SSSS9  [        R                  " U 5        [        R                  " U 5        g )Nurls+z,Specifies the URLs of the buckets to delete.)nargshelp)add_argumentr   add_additional_headers_flagadd_continue_on_error_flag)parsers    %lib/surface/storage/buckets/delete.pyArgsDelete.Args7   s:    
c N  P	%%f-	$$V,    c           
      T   UR                    H:  n[        R                  " U5      n[        R                  " UR
                  U5        M<     [        R                  R                  5       n[        R                  " [        R                  " UR                   [        R                  R                  S9US9R                  5       n[         R"                  " U5      n[$        R&                  " USU[(        R*                  " [(        R,                  R.                  S S9UR0                  S9U l        g )N)include_buckets)task_status_queueT)increment_typemanifest_path)parallelizabler$   progress_manager_argscontinue_on_error)r   r   storage_url_from_stringr   raise_error_if_not_bucketcommand_pathr   multiprocessing_contextQueuer   DeleteTaskIteratorFactoryr	   NameExpansionIteratorBucketSettingYESbucket_iteratorr
   PluralityCheckableIteratorr   execute_tasksr   ProgressManagerArgsIncrementTypeINTEGERr)   	exit_code)selfargs
url_stringurlr$   r3   #plurality_checkable_bucket_iterators          r   Run
Delete.Run>   s    ii
//
;c++D,=,=sC   ,CCIIK2LL,,II~'C'C'G'G	
 ,	
 o  	%??	 ( #00++)==&44<<  002DNr!   )r9   N)
__name__
__module____qualname____firstlineno____doc__detailed_helpstaticmethodr   r?   __static_attributes__ r!   r   r   r   !   s/    &
	
-$ - -2r!   r   N)rE   
__future__r   r   r   googlecloudsdk.callioper   "googlecloudsdk.command_lib.storager   r   r	   r
   r   (googlecloudsdk.command_lib.storage.tasksr   r   r   +googlecloudsdk.command_lib.storage.tasks.rmr   UniverseCompatibleCommandr   rI   r!   r   <module>rQ      sV    9 &  ' ( : 4 = K : B H @ T 42T\\ 42 42r!   