
    [                         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  e	j                  e	j                   j"                         G d	 d
e	j$                               Zy)z6Implements command to delete a specified guest policy.    )absolute_import)division)unicode_literals)utils)base)log)
propertiesc                   &    e Zd ZdZed        Zd Zy)DeletezDelete the specified guest policy.

  ## EXAMPLES

    To delete the guest policy named `policy1` in the current project, run:

          $ {command} policy1

  c                 4    | j                  dt        d       y)See base class.	POLICY_IDz#Name of the guest policy to delete.)typehelpN)add_argumentstr)parsers    6lib/surface/compute/os_config/guest_policies/delete.pyArgszDelete.Args(   s      #$I  K    c                    | j                         }t        j                  |      }t        j                  |      }t        j
                  j                  j                  j                         }t        j                  d||j                        }|j                  |      }|j                  }|j                  |      }	t        j                   |       |	S )r   projects)name)ReleaseTrackosconfig_api_utilsGetClientInstanceGetClientMessagesr	   VALUEScoreproject	GetOrFailosconfig_command_utilsGetGuestPolicyUriPathr   *OsconfigProjectsGuestPoliciesDeleteRequestprojects_guestPoliciesr   r   DeletedResource)
selfargsrelease_trackclientmessagesr    guest_policy_namerequestserviceresponses
             r   Runz
Delete.Run.   s    %%'M11-@F!33MBH$$,,668G.DDGT^^-AA B  G++G~~g&H)*Or   N)__name__
__module____qualname____doc__staticmethodr   r0    r   r   r   r      s"     K K
r   r   N)r4   
__future__r   r   r   (googlecloudsdk.api_lib.compute.os_configr   r   googlecloudsdk.callioper   ,googlecloudsdk.command_lib.compute.os_configr"   googlecloudsdk.corer   r	   ReleaseTracksr   BETADeleteCommandr   r6   r   r   <module>r?      s\    = &  ' P ( X # * D%%**+ T   , r   