
    :                     H    d Z ddlmZ ddlmZ ddlmZ dZd Zd Zd Zd	 Z	y
)zBConvenience functions for dealing with instance settings metadata.    )absolute_import)division)unicode_literalszmetadata.items.c                 
   | j                         j                         }|j                         rD|j                         D ]1  \  }}|j                  j	                  |j                  ||             3 | j                  |      S )N)keyvalueitems)InstanceSettingsMetadata
ItemsValuer
   additionalPropertiesappendAdditionalProperty)message_classesmetadatais_metadatar   r   s        Flib/googlecloudsdk/api_lib/compute/instance_settings_metadata_utils.py(ConstructInstanceSettingsMetadataMessager      su    88:EEG+^^nn&
U&&--

(
(S
(
> ' 
	1	1	1	DD    c                 v    | D cg c]  }t         |j                         z    }}dj                  |      S c c}w )N,)UPDATE_MASK_METADATA_PREFIXlowerjoin)metadata_keysr   mask_fieldss      r   ConstructUpdateMaskr   #   s@    ;H;HC!CIIK/=   
+	s   6c                 v    i }| r4| j                   j                  D ]  }|j                  ||j                  <    |S )N)r
   r   r   r   )metadata_msgresr   s      r   ConstructMetadataDictr!   *   s7    
# &&;;"..c(,, <	*r   c                 P    | j                         D ]  \  }}||vs	|||   k7  s y y)NFTr	   )request_metadataexisting_metadatar   r   s       r   'IsRequestMetadataSameAsExistingMetadatar%   2   s9     %**,jc5
##u0A#0F'F - 
r   N)
__doc__
__future__r   r   r   r   r   r   r!   r%    r   r   <module>r)      s1    I &  ' 0 Er   