
                            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S
KJr  \	R(                  \	R*                  " \	R,                  R.                  5       " S S\	R0                  5      5       5       r\	R*                  " \	R,                  R4                  5       " S S\5      5       r\	R*                  " \	R,                  R8                  5       " S S\5      5       rg))Update a Cloud NetApp Volume Replication.    )absolute_import)division)unicode_literals)client)base)flags)labels_util)concept_parsers)logc                   d    \ rS rSrSr\R                  R                  rSSS.r	\
S 5       rS rSrg	)
Update   r   z[          Update a Cloud NetApp Volume Replication and its specified parameters.
          a            The following command updates a Replication named NAME and its specified parameters:

              $ {command} NAME --location=us-central1 --volume=vol1 --replication-schedule=EVERY_5_MINUTES --description="new description" --cluster-location= us-central1
          )DESCRIPTIONEXAMPLESc                    [         R                  " [        R                  " S5      /5      R	                  U 5        [
        R                  " U 5        [
        R                  " U SS9  [
        R                  " U 5        [        R                  " U 5        [        R                  " U S5        [        R                  " U 5        g)z$Add args for updating a Replication.zThe Replication to update.F)requiredReplicationN)r   ConceptParserr	   GetReplicationPresentationSpecAddToParserreplications_flagsAddReplicationVolumeArg$AddReplicationReplicationScheduleArg AddReplicationClusterLocationArgAddResourceAsyncFlagAddResourceDescriptionArgr
   AddUpdateLabelsFlags)parsers    1lib/surface/netapp/volumes/replications/update.pyArgsUpdate.Args1   s     !!		-	-.J	KLk&..v6;; 77?	v&	##FM:$$V,    c                    UR                   R                  R                  5       n[        R                  " U R
                  5      n[        R                  R                  U5      nUR                  U5      nUR                  5       (       aI  UR                  UR                  R                  R                  UR                  5      R!                  5       nOSn["        R$                  " UR&                  UR                  5      nUR)                  XQR*                  UUUR,                  S9n/ n	UR/                  S5      (       a  U	R1                  S5        UR/                  S5      (       d,  UR/                  S5      (       d  UR/                  S5      (       a  U	R1                  S5        UR/                  S5      (       a  U	R1                  S5        UR/                  S	5      (       a  U	R1                  S	5        S
R3                  U	5      n
UR5                  X(XR6                  5      nUR6                  (       aW  SR9                  U R;                  5       R<                  5      n[>        R@                  RC                  SR9                  U5      5        U$ )z@Update a Cloud NetApp Volume Replication in the current project.N)descriptionlabelsreplication_schedulecluster_locationr%   update_labelsremove_labelsclear_labelsr&   r'   r(   ,z*gcloud {} netapp volumes replications listzPCheck the status of the updated replication by listing all replications:
  $ {} )"CONCEPTSreplicationParsereplications_clientReplicationsClient_RELEASE_TRACKr
   DiffFromUpdateArgsGetReplicationMayHaveUpdatesApplymessagesr   LabelsValuer&   	GetOrNoner   ,GetReplicationReplicationScheduleEnumFromArgr'   ParseUpdatedReplicationConfigr%   r(   IsSpecifiedappendjoinUpdateReplicationasync_formatReleaseTrackprefixr   statusPrint)selfargsreplication_refr   labels_difforiginal_replicationr&   replication_schedule_enumr.   updated_fieldsupdate_maskresultcommands                r    Run
Update.Run@   s   mm//557O 33D4G4GHF""11$7K!00A !!##  
//
%
%
1
13G3N3N	  f 	GG%%v	
  66*:*:66.. 7 K N &&M*))O,,N++H%.//23*++./((>*K%%k;;F {{<CC




$
$g 
jj$$*F7O Mr#    N)__name__
__module____qualname____firstlineno____doc__r   rC   GAr2   detailed_helpstaticmethodr!   rQ   __static_attributes__rS   r#   r    r   r      sB     2$$''.		- - -9r#   r   c                   D    \ rS rSrSr\R                  R                  rSr	g)
UpdateBeta|   r   rS   N)
rT   rU   rV   rW   rX   r   rC   BETAr2   r\   rS   r#   r    r^   r^   |   s    1$$)).r#   r^   c                   D    \ rS rSrSr\R                  R                  rSr	g)UpdateAlpha   r   rS   N)
rT   rU   rV   rW   rX   r   rC   ALPHAr2   r\   rS   r#   r    rb   rb      s    1$$**.r#   rb   N)rX   
__future__r   r   r   2googlecloudsdk.api_lib.netapp.volumes.replicationsr   r0   googlecloudsdk.callioper   !googlecloudsdk.command_lib.netappr	   6googlecloudsdk.command_lib.netapp.volumes.replicationsr   $googlecloudsdk.command_lib.util.argsr
   (googlecloudsdk.command_lib.util.conceptsr   googlecloudsdk.corer   DefaultUniverseOnlyReleaseTracksrC   rY   UpdateCommandr   r`   r^   rd   rb   rS   r#   r    <module>rp      s    0 &  ' \ ( 3 ^ < D # D%%(()XT X * Xv D%%**+* * ,* D%%++,+* + -+r#   