
    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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g)zDCommon utility functions for Cloud Filestore update backup commands.    )absolute_import)division)unicode_literals)encoding)filestore_client)update_util)util)
properties)	resourcesc                 ~    [         R                  " X[         R                  5      nU(       a  X2R                  l        U$ )zUpdate backup labels.)r   GetUpdatedLabelsbackup_feature_namebackuplabels)
unused_refargsreq
new_labelss       ?lib/googlecloudsdk/command_lib/filestore/backups/update_util.pyUpdateLabelsr      s0    ++D,7,K,KM*"JJ	*    c                 N    [         R                  " XU[         R                  5      $ )N)r   AddDescriptionr   )unused_instance_refr   patch_requests      r   r   r   &   s%    		#	#$7}$/$C$C
E Er   c                     [         R                  R                  R                  R	                  SS9nU R
                  n[        R                  R                  SUUU R                  S9nU$ )NT)requiredzfile.projects.locations.backups)
projectsIdlocationsId	backupsId)
r
   VALUEScoreprojectGetregionr   REGISTRYCreater   )r   r#   locationrefs       r   GetResourceRefr*   +   sb    ""**...='[[(!!'	 	" 	#
 
*r   c                     [        U5      n[        R                  " U5      n[        R                  " U5      nUR                  U5      nXbl        U$ )zHFetch existing Filestore instance to update and add it to Patch request.)r*   r	   GetApiVersionFromArgsr   FilestoreClient	GetBackupr   )unused_resource_refr   r   resource_refapi_versionclientorig_backups          r   GetExistingBackupr4   6   sH    %,**40+++K8&  .+$	r   c                     A [        U5      n[        R                  " U5      n[        R                  " U5      n[
        R                  " UR                  U5      5      $ )z3Python hook to generate the backup update response.)r*   r	   r,   r   r-   r   MessageToDictr.   )responser   r0   r1   r2   s        r   FormatBackupUpdateResponser8   @   sK    %,**40+++K8&			 0 0 >	??r   N)__doc__
__future__r   r   r   apitools.base.pyr    googlecloudsdk.api_lib.filestorer   $googlecloudsdk.command_lib.filestorer   r	   googlecloudsdk.corer
   r   r   r   r*   r4   r8    r   r   <module>r@      sA    K &  ' % = < 5 * )E
@r   