
    	                         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  \R                    " S S\R"                  5      5       rg)z/Implementation of command for deleting folders.    )absolute_import)division)unicode_literals)base)errors_util)flags)folder_util)name_expansion)rm_command_util)storage_url)task_graph_executorc                   8    \ rS rSrSrSSS.r\S 5       rS rSr	g)	Delete   zDelete folders.z
      The following command deletes a folder named `folder`
      in a hierarchical namesapce bucket
      called `my-bucket`:

        $ {command} gs://my-bucket/folder/
      )DESCRIPTIONEXAMPLESc                 \    U R                  S[        SSS9  [        R                  " U 5        g )Nurls+z"The URLs of the folders to delete.)typenargshelp)add_argumentstrr   add_additional_headers_flag)parsers    %lib/surface/storage/folders/delete.pyArgsDelete.Args.   s1    
1	   
%%f-    c                 x   UR                    H;  n[        R                  " U5      n[        R                  " UR
                  US5        M=     [        R                  " UR                   [        R                  R                  SS9n[        R                  " U[        R                  R                  5       SS9U l        g )NfolderT)folder_settingraise_error_for_unmatched_urls)task_status_queuer$   )r   r   storage_url_from_stringr   "raise_error_if_not_gcs_folder_typecommand_pathr
   NameExpansionIteratorr	   FolderSettingLIST_WITHOUT_OBJECTSr   remove_foldersr   multiprocessing_contextQueue	exit_code)selfargs
url_stringurlfolder_expansion_iterators        r   Run
Delete.Run8   s    ii
//
;c44


S(   !/ D D		"00EE'+!
 %33!-EEKKM'+DNr    )r/   N)
__name__
__module____qualname____firstlineno____doc__detailed_helpstaticmethodr   r5   __static_attributes__ r    r   r   r      s/     +
	- . .r    r   N)r;   
__future__r   r   r   googlecloudsdk.callioper   "googlecloudsdk.command_lib.storager   r   r	   r
   r   r   (googlecloudsdk.command_lib.storage.tasksr   DefaultUniverseOnlyCommandr   r?   r    r   <module>rF      sP    6 &  ' ( : 4 : = > : H (T\\ ( (r    