
    (                     X   d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 ddlmZ ddlmZ dd	lmZ  e
j                   e
j"                  j$                  e
j"                  j&                  e
j"                  j(                         G d
 de
j*                               Zddde_        y)z3Command for removing resource policies from a disk.    )absolute_import)division)unicode_literals)base_classes)
disks_util)base)flags)utilc                   &    e Zd ZdZed        Zd Zy)DisksRemoveResourcePoliciesz4Remove resource policies from a Compute Engine disk.c                     t        j                  d      j                  | d       t        j                  | ddd       y )	NFpluralzremove resource policies from)operation_typezremoved fromdiskT)required)disks_flagsMakeDiskArgAddArgumentr	   AddResourcePoliciesArgs)parsers    5lib/surface/compute/disks/remove_resource_policies.pyArgsz DisksRemoveResourcePolicies.Args"   s>    5)55> 6 @	!!7    c                 D   t        j                  | j                               }|j                  j                  }|j                  j
                  }t        j                  d      j                  ||j                        }t        j                  |||      }|j                         }g }|j                  D ]N  }	t        j                  |j                  |	|j                   |      }
|j#                  |
j%                                P |j'                  ||j                        S )NFr   )projectregion)r   ComputeApiHolderReleaseTrackclientapitools_clientmessagesr   r   ResolveAsResource	resourcesapi_utilGetDiskInfoGetDiskRegionNameresource_policiesr
   ParseResourcePolicyr   appendSelfLink!MakeRemoveResourcePoliciesRequest)selfargsholderr    r"   disk_ref	disk_infodisk_regionr(   policyresource_policy_refs              r   RunzDisksRemoveResourcePolicies.Run)   s    **4+<+<+>?F]]**F}}%%H&&''f.>.>? $$Xvx@I--/K(( 44



""	
 2;;=> ) 667H7=}}F Fr   N)__name__
__module____qualname____doc__staticmethodr   r5    r   r   r   r      s     =7 7Fr   r   zxRemove resource policies from a Compute Engine disk.

*{command}* removes resource policies from a Compute Engine disk.
zThe following command removes one resource policy from a Compute Engine disk.

  $ {command} my-disk --zone=ZONE --resource-policies=POLICY
)DESCRIPTIONEXAMPLESN)r9   
__future__r   r   r   googlecloudsdk.api_lib.computer   r   r%   googlecloudsdk.callioper   (googlecloudsdk.command_lib.compute.disksr	   r   4googlecloudsdk.command_lib.compute.resource_policiesr
   ReleaseTracksr   ALPHABETAGAUpdateCommandr   detailed_helpr;   r   r   <module>rI      s    : &  ' 7 A ( I F E D%%++T->->-C-C%%((*F$"4"4 F*FF		-  )r   