
                         t    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 r	S r
S	 rS
 rS rS rS rS rg)zBTools for converting metadata fields to XML/S3-compatible formats.    )absolute_import)division)unicode_literals)metadata_util)user_request_args_factoryc                 .    [         R                  " U 5      $ )z'Converts ACLs file to S3 metadata dict.)r   cached_read_yaml_json_file	file_paths    Clib/googlecloudsdk/api_lib/storage/xml_metadata_field_converters.pyprocess_acl_filer      s     
	1	1)	<<    c                 z    U [         R                  :X  a  [         R                  $ [        R                  " U 5      nU$ )z'Converts CORS file to S3 metadata dict.r   CLEARr   r	   )r   	cors_dicts     r   process_corsr   "   s5    +111$***66yA)
 
r   c                     U [         R                  :X  a  [         R                  $ [        R                  " U 5      n/ nUR	                  5        H  u  p4UR                  X4S.5        M     SU0$ )z)Converts labels file to S3 metadata dict.)KeyValueTagSet)r   r   r   r	   itemsappend)r   labels_dicts3_tag_set_listkeyvalues        r   process_labelsr   /   se    +111$***88C+/%%'jc378 ( O	$$r   c                 v    U [         R                  :X  a  [         R                  $ [        R                  " U 5      $ )z,Converts lifecycle file to S3 metadata dict.r   r
   s    r   process_lifecycler    <   s0    +111$*** 
	1	1)	<<r   c                     U [         R                  :H  nU[         R                  :H  nU(       a  U(       a  [         R                  $ 0 nU (       a  U(       d  XS'   U(       a  U(       d  XS'   SU0$ )z.Converts logging settings to S3 metadata dict.TargetBucketTargetPrefixLoggingEnabledr   r   )
log_bucketlog_object_prefixclear_log_bucketclear_log_object_prefixlogging_configs        r   process_loggingr+   H   sd    #<#B#BB-1J1P1PP1$***.(%/>"6%6>"
N	++r   c                      U (       a  SOSnSU0$ )z4Converts requester_pays boolean to S3 metadata dict.	RequesterBucketOwnerPayer )requester_payspayers     r   process_requester_paysr3   W   s    '+]%
5	r   c                      U (       a  SOSnSU0$ )z-Converts versioning bool to S3 metadata dict.Enabled	SuspendedStatusr0   )
versioningversioning_strings     r   process_versioningr:   ]   s    #-i;
%	&&r   c                     U [         R                  :H  nU[         R                  :H  nU(       a  U(       a  [         R                  $ 0 nU (       a  U(       d  SU 0US'   U(       a  U(       d  SU0US'   U$ )z-Converts website strings to S3 metadata dict.r   ErrorDocumentSuffixIndexDocumentr%   )web_error_pageweb_main_page_suffixclear_error_pageclear_main_page_suffixmetadata_dicts        r   process_websiterD   c   sr    #'@'F'FF7===  0$***-,&+^%<M/""8&.0D%EM/"	r   N)__doc__
__future__r   r   r   googlecloudsdk.api_lib.storager   "googlecloudsdk.command_lib.storager   r   r   r   r    r+   r3   r:   rD   r0   r   r   <module>rI      sB    I &  ' 8 H=

%	=,'r   