
    |                         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  SSKJr  SS
KJr  SSKJr   " S S\R.                  5      r\R2                  " S5      \l        g)z#Command for adding labels to disks.    )absolute_import)division)unicode_literals)base_classes)
disks_util)poller)waiter)base)flags)labels_doc_helper)labels_flags)labels_utilc                   2    \ rS rSrSrSr\S 5       rS rSr	g)	AddLabels!   zadd-labels command for disks.Nc                     [         R                  " SS9U l        U R                  R                  U5        [        R
                  " U5        g )NF)plural)disks_flagsMakeDiskArgDISK_ARGAddArgumentr   AddArgsForAddLabels)clsparsers     'lib/surface/compute/disks/add_labels.pyArgsAddLabels.Args&   s4    **%8CLLLV$$$V,    c                    [         R                  " U R                  5       5      nUR                  R                  nUR                  R
                  nU R                  R                  UUR                  [        R                  " UR                  5      S9n[        R                  " U5      n[        R                  " XSU5      nUR                  5       nUR!                  5       n	[        R"                  " US9R%                  U	R&                  UR(                  5      n
UR+                  XR-                  5       5      nU
R.                  (       d  U$ UR1                  5       nUR3                  U5      nUR                  R5                  UR6                  UR9                  5       S9n[:        R<                  " U5      n[>        R@                  " XSRC                  URE                  5       5      5      $ )N)scope_lister)	additions)
collectionzUpdating labels of disk [{0}])#r   ComputeApiHolderReleaseTrackclientapitools_clientmessagesr   ResolveAsResource	resourcesr   GetDefaultScopeListerr   GetUpdateLabelsDictFromArgsapi_utilGetDiskInfoGetDiskResourceGetSetLabelsRequestMessageDiffApplyLabelsValuelabelsGetSetDiskLabelsRequestMessage	GetOrNoneneeds_update
GetService	SetLabelsParseselfLinkGetOperationCollectionr   Pollerr	   WaitForformatName)selfargsholderr%   r'   disk_ref
add_labels	disk_infodiskset_label_reqlabels_updaterequestservice	operationoperation_refoperation_pollers                   r   RunAddLabels.Run,   s   **4+<+<+>?F]]**F}}%%H}}..00? / AH 88>J$$Xx@I$$&D88:M$$z:@@!!4;;0M66%%')G %%k""$G!!'*I$$**y'G'G'I + KM }}W->>'..MMO	 r    )
__name__
__module____qualname____firstlineno____doc__r   classmethodr   rN   __static_attributes__rP   r   r   r   r   !   s!    %(- -
r   r   rF   N)rU   
__future__r   r   r   googlecloudsdk.api_lib.computer   r   r,   )googlecloudsdk.api_lib.compute.operationsr   googlecloudsdk.api_lib.utilr	   googlecloudsdk.callioper
   "googlecloudsdk.command_lib.computer   r   r   (googlecloudsdk.command_lib.compute.disksr   $googlecloudsdk.command_lib.util.argsr   UpdateCommandr    GenerateDetailedHelpForAddLabelsdetailed_helprP   r   r   <module>rc      s\    * &  ' 7 A < . ( 4 @ ; I <("" (X 66v> 
 r   