
    ]h&                        d dl mZmZmZmZmZmZ d dlmZ d dl	m
Z
 ddlmZmZmZmZmZmZmZmZmZmZmZmZmZmZ ddlmZ ddlmZ erd dlmZ dd	l m!Z!m"Z"m#Z#m$Z$m%Z% dd
lm&Z& dddedee'ef   fdZ(dddedee'ef   defdZ)deee'e'f      deee      fdZ*dddedee'ef   dedef   fdZ+dddedee'ef   defdZ,dddeeee'e-f      eee'e-f      f   fdZ.dddee'ef   fdZ/dddee'ef   fdZ0dddefd Z1d!ed"   deee'e'f      fd#Z2d$e
d%e'dee
   fd&Z3	 d,d$e
d%e'd(ee'   deee
      fd)Z4d$e
d%e'dee'   fd*Z5d$e
d%e'dee-   fd+Z6y')-    )AnyDictListOptionalTupleTYPE_CHECKING)unquote)Element   )BlobAnalyticsLoggingBlobPropertiesBlobTypeContainerPropertiesContentSettingsCopyPropertiesCorsRuleImmutabilityPolicyLeasePropertiesMetricsObjectReplicationPolicyObjectReplicationRuleRetentionPolicyStaticWebsite)get_enum_value)deserialize_metadata)PipelineResponse)BlobItemInternalBlobTagsPageListStorageServicePropertiesStorageServiceStats)LocationModeresponser   objheadersc                 R    	 |j                   } | |||      S # t        $ r |}Y w xY wN)http_responseAttributeError)
cls_methodr#   r$   r%   deserialized_responses        e/var/www/core.comfia.cic-ware.com/crm/lib/python3.12/site-packages/azure/storage/blob/_deserialize.py&deserialize_pipeline_response_into_clsr-   )   s<    ) ( 6 6 +S'::  ) ()s    &&returnc                     t        dt        | ||      t        | j                  j                        d|}d|v r+d|v r|d   |j
                  _        |S d |j
                  _        |S )N)metadata$object_replication_source_propertieszContent-Rangezx-ms-blob-content-md5 )r   r   deserialize_ors_policiesr(   r%   content_settingscontent_md5r#   r$   r%   blob_propertiess       r,   deserialize_blob_propertiesr8   1   s    $ %hW=-EhF\F\FdFd-e O
 '!"g-;BCZ;[O,,8  <@O,,8    policy_dictionaryc                    | y | j                         D ci c]  \  }}d|v r|dk7  r|| }}}i }|j                         D ]i  \  }}|j                  d      d   j                  d      }|d   }|d   }|j                  |      xs g ||<   ||   j                  t	        ||             k |j                         D 	cg c]  \  }}	t        ||	       }
}}	|
S c c}}w c c}	}w )Nzor-zx-ms-or-policy-idr   _r   )rule_idstatus)	policy_idrules)itemssplitgetappendr   r   )r:   keyvalor_policy_status_headersparsed_resultpolicy_and_rule_idsr?   r=   kvresult_lists              r,   r3   r3   ?   s     :K9P9P9R  PXS##(C<C;N4N !$S  P  P =?M,224 \S!ii.q177<'*	%a( $1#4#4Y#?#E2i i ''(=gVY(Z[\ N[M`M`MbcTQ*Qa@cKc# P ds   CC#r"   c                 Z    t        | ||      }||_        | j                  j                  |fS r'   )r8   
propertiesr(   location_moder6   s       r,   deserialize_blob_streamrP   Z   s0    
 2(CIO$CN!!//44r9   c                 :    t        | ||      }t        dd|i|}|S )Nr0   r2   )r   r   )r#   r$   r%   r0   container_propertiess        r,    deserialize_container_propertiesrS   d   s5    
 $Hc7;H. 
  r9   rangesr   c                    g }g }| j                   r0| j                   D cg c]  }|j                  |j                  d }}| j                  r0| j                  D cg c]  }|j                  |j                  d }}||fS c c}w c c}w )N)startend)
page_rangerV   rW   clear_range)rT   rX   rY   bs       r,   get_page_ranges_resultr[   q   s~    JK@F@Q@QR16R
RAGASASTA7TT{"" STs    B B	generatedr!   c                     d }d }| j                   ,| j                   j                  }| j                   j                  }d||diS )Ngeo_replication)r>   last_sync_time)r^   r>   r_   )r\   r>   r_   s      r,   service_stats_deserializer`   {   sR    FN  ,**11"22AA,
 r9   r    c           	         d }| j                   ,| j                   D cg c]  }t        j                  |       }}t        j                  | j                        t        j                  | j                        t        j                  | j                        || j                  t        j                  | j                        t        j                  | j                        dS c c}w )N)analytics_logginghour_metricsminute_metricscorstarget_versiondelete_retention_policystatic_website)re   r   _from_generatedr   loggingr   rc   rd   default_service_versionr   rg   r   rh   )r\   	cors_listre   s      r,   service_properties_deserializerm      s    I~~!@IOX--d3O	O1AA)BSBST//	0F0FG!11)2J2JK#;;#2#B#B9CdCd#e'77	8P8PQ  Ps   C r   c                    t               }| j                  j                  r;| j                  j                  %t	        | j                  j                        |_        n| j                  j                  |_        t        | j                  j                        }t        |      |_        | j                  j                  |_	        | j                  |_
        | j                  |_        | j                  j                  |_        | j                  r| j                  j                  ni |_        | j                  r| j                  j                   nd |_        t%        j&                  |       |_        t+        j&                  |       |_        | j                  j.                  |_        | j                  j0                  |_        t3        j&                  |       |_        | j                  j6                  |_        | j                  j:                  |_        | j                  j>                  |_        | j                  j@                  |_         | j                  jB                  |_!        | j                  jD                  |_"        | j                  jF                  |_$        | j                  jJ                  |_%        | j                  jL                  |_'        | j                  jP                  |_(        | j                  jR                  |_*        | jV                  |_+        | jX                  |_,        | j                  jZ                  |_-        t]        | j^                        |_0        tc        | jd                        |_3        | j                  jh                  |_4        tk        j&                  |       |_6        | j                  jn                  |_8        | jr                  |_9        |S r'   ):r   nameencodedcontentr	   r   rN   	blob_typer   etagdeletedsnapshot	is_sealedis_append_blob_sealedr0   additional_properties	encryptedencrypted_metadatar   ri   leaser   copylast_modifiedcreation_timer   r4   content_lengthsizeblob_sequence_numberpage_blob_sequence_numberserver_encryptedencryption_scopedeleted_timeremaining_retention_daysaccess_tier	blob_tierrehydrate_priorityaccess_tier_inferredblob_tier_inferredarchive_statusaccess_tier_change_timeblob_tier_change_time
version_idis_current_version	tag_count
parse_tags	blob_tagstagsr3   object_replication_metadatar1   last_accessed_onr   immutability_policy
legal_holdhas_legal_holdhas_versions_only)r\   blobrr   s      r,   'get_blob_properties_from_generated_coder      s   D~~).."8"8"DINN223	NN**	y33==>Ii(DN$$))DI$$DL&&DM!*!5!5!?!?D@I@R@RI&&<<XZDM>G>P>Pi00::VZD 00;DJ..y9DI"--;;D"--;;D+;;IFD$$33DI%.%9%9%N%ND"%00AAD%00AAD!,,99D$-$8$8$Q$QD!))55DN'22EED'22GGD#..==D!*!5!5!M!MD**DO'::D))33DN9../DI0HInIn0oD-%00AAD1AA)LD#..99D&88DKr9   generated_tagsr   c                 r    | r0| j                   D ci c]  }|j                  |j                   }}|S yc c}w )a  Deserialize a list of BlobTag objects into a dict.

    :param Optional[BlobTags] generated_tags:
        A list containing the BlobTag objects from generated code.
    :returns: A dictionary of the BlobTag objects.
    :rtype: Optional[Dict[str, str]]
    N)blob_tag_setrE   value)r   ttag_dicts      r,   r   r      s:     ,:,G,GHqAEE177NHH Is   4elementro   c                 $    | j                  |      S r'   )find)r   ro   s     r,   load_single_xml_noder      s    <<r9   Nwrapperc                 ^    | }|rt        | |      }|g S t        |j                  |            S r'   )r   listfindall)r   ro   r   found_elements       r,   load_many_xml_nodesr      s9    
 (/M,Wg>	%%d+,,r9   c                 Z    | j                  |      }||j                  sy |j                  S r'   )r   textr   ro   nodes      r,   load_xml_stringr      s(    <<D|49999r9   c                 l    | j                  |      }||j                  sy t        |j                        S r'   )r   r   intr   s      r,   load_xml_intr      s,    <<D|499tyy>r9   r'   )7typingr   r   r   r   r   r   urllib.parser	   xml.etree.ElementTreer
   _modelsr   r   r   r   r   r   r   r   r   r   r   r   r   r   _shared.modelsr   _shared.response_handlersr   azure.core.pipeliner   _generated.modelsr   r   r   r    r!   r"   strr-   r8   r3   rP   rS   r   r[   r`   rm   r   r   r   r   r   r   r2   r9   r,   <module>r      s~   C B   )     + ;4  -;AS ;Z] ;hlmprumuhv ;*< 3 QUVY[^V^Q_ dr c3h0H XVZ[rVsMt 65 5	5 #s(^5 >3	5
  
 	
  #s(^
  	
 #: #%T#s(^8LdSWX[]`X`SaNb8b2c #)> 4S> .H TRUWZRZ^ '7I 'n 'Rx
3 c3h8P '  '9J  "
-
-

- c]
- 
(7
	
-W C HSM '  # r9   