
    |                         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r " S	 S
\R                  5      rS rS rg)z/Utilities for Data Catalog taxonomies commands.    )absolute_import)division)unicode_literals)encoding)util)
exceptionsNc                       \ rS rSrSrSrg)InvalidInlineSourceError   z1Error if a inline source is improperly specified. N)__name__
__module____qualname____firstlineno____doc____static_attributes__r       >lib/googlecloudsdk/command_lib/data_catalog/taxonomies/util.pyr
   r
      s    9r   r
   c                 <   [         R                  " U5      nUS:X  a  UR                  nOUR                  n [        R
                  " SU 0U5      n[        U5      nU(       a!  S/nXe-  n[        SR                  U5      5      eU$ ! [         a    [        S5      ef = f)a[  Converts the given inline source dict to the corresponding import request.

Args:
  inline_source: dict, inlineSource part of the import taxonomy request.
  version_label: string, specifies the version for client.
Returns:
  GoogleCloudDatacatalogV1beta1ImportTaxonomiesRequest
Raises:
  InvalidInlineSourceError: If the inline source is invalid.
v1inlineSourcezVAn error occurred while parsing the serialized taxonomy. Please check your input file.z=Invalid inline source, the following fields are unrecognized:
)
api_utilGetMessagesModule/GoogleCloudDatacatalogV1ImportTaxonomiesRequest4GoogleCloudDatacatalogV1beta1ImportTaxonomiesRequestr   DictToMessageAttributeErrorr
   _GetUnrecognizedFieldPathsjoin)inline_sourceversion_labelmessagesrequestimport_request_messageunrecognized_field_pathserror_msg_liness          r   ProcessTaxonomiesFromYAMLr(      s     ''6(dFFGKKG2%33	' 88NO' (O/O
"499_#=
>>	 
 2
" $1 2 22s   B Bc                     [         R                  " U 5      n/ nU HF  u  p4SR                  S U 5       5      nU H#  nUR                  SR	                  XV5      5        M%     MH     [        U5      $ )z?Returns the field paths for unrecognized fields in the message..c              3   N   #    U  H  n[         R                  " U5      v   M     g 7f)N)six	text_type).0es     r   	<genexpr>-_GetUnrecognizedFieldPaths.<locals>.<genexpr>F   s     !M<Lq#--"2"2<Ls   #%z{}.{})r   UnrecognizedFieldIterr    appendformatsorted)messageerrorsr&   edges_to_messagefield_namesmessage_field_path
field_names          r   r   r   A   sp    ))'2&'-#!M<L!MM!
%%gnn
'* + " (.
 
(	))r   )r   
__future__r   r   r   apitools.base.pyr   #googlecloudsdk.api_lib.data_catalogr   r   googlecloudsdk.corer   r,   Errorr
   r(   r   r   r   r   <module>rA      s<    6 &  ' % @ * 
:z// : D	*r   