
    $                     v    S r SSKJr  SSKJr  SSKJr  SSK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g)z4Hooks function for Cloud Media Asset's transformers.    )absolute_import)division)unicode_literalsN)encoding)apis)utils)	resourcesc                    A [         R                  " SS5      nUR                  nUR                  (       aR  [        R
                  " UR                  5      n[        R                  " XT5      n[        R                  " U5        Xbl
        UR                  S5      (       aD  [        R                  " UR                  UR                  R                  5      UR                  l        U$ )zaReads the json file of with the transformer configs and parse the content to the request message.
mediaassetv1alphalabels)r   GetMessagesModuleTransformercreate_transformer_configs_filejsonloadsr   DictToMessager   ValidateMediaAssetMessagetransformerIsKnownAndSpecifiedr   LabelsValue)refargsreqmessagesmessage_classtransformer_configsr   s          @lib/googlecloudsdk/command_lib/media/asset/transformers/hooks.pyParseTransformerConfigFiler      s    	##L)<(&&-	))**T%I%IJ(()<LK	##K0!O	h''%33X))557COO	*    c                 `    [         R                  " U 5      R                  R                  U5      $ )zGet the modified resource.

Args:
  api_version: The request release track.
  request_message: request message type in the python client.

Returns:
  The modified resource.
)r   	GetClientprojects_locations_transformersGet)api_versionrequest_messages     r   GetExistingResourcer'   -   s)     
	%	E	E	I	I
 r    c                    [         R                  " U5      n[         R                  " X5        [         R                  " 5       n[         R                  " U5      n[
        R                  R                  SUUUR                  S9nSUR                  ;   a  U $ [         R                  " U5      R                  UR                  5       S9n[        X&5      $ )z6Wait for operations to finish and return the resource.z*mediaasset.projects.locations.transformers)
projectsIdlocationsIdtransformersIddelete)name)r   GetApiVersionFromArgsWaitForOperation
GetProjectGetLocationr	   REGISTRYCreater   command_pathGetApiMessage1MediaassetProjectsLocationsTransformersGetRequestRelativeNamer'   )responser   r%   projectlocationresource_refr&   s          r   ProcessOutputr<   ;   s    ++D1+/'t$(##**2%%	 + ', """O''DD((* E ,  
[	::r    )__doc__
__future__r   r   r   r   apitools.base.pyr   googlecloudsdk.api_lib.utilr   &googlecloudsdk.command_lib.media.assetr   googlecloudsdk.corer	   r   r'   r<    r    r   <module>rD      s1    ; &  '  % , 8 ) ;r    