
    	                     >   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$                   ej&                  ej(                  j*                         G d
 dej,                                             Zddie_        y)z3Command for describing network policy associations.    )absolute_import)division)unicode_literals)ClassVar)base_classes)client)base)flagsc                   L    e Zd ZU dZeej                     ed<   ed        Z	d Z
y)DescribezDescribe an association between a network policy and a network.

  *{command}* is used to describe network policy associations.
  NETWORK_POLICY_ARGc                     t        j                  dd      | _        | j                  j                  |d       t        j                  |       y )NTdescribe)required	operation)operation_type)r
    NetworkPolicyAssociationArgumentr   AddArgumentAddArgsDescribeAssociation)clsparsers     =lib/surface/compute/network_policies/associations/describe.pyArgszDescribe.Args)   sC    "CCC &&vj&I	$$V,    c                 $   t        j                  | j                               }| j                  j	                  ||j
                        }t        j                  ||j                        }|j                  |j                  |j                        S )N)compute_client)network_policyname)r   ComputeApiHolderReleaseTrackr   ResolveAsResource	resourcesr   NetworkPolicyGetAssociationr   r   )selfargsholderrefnetwork_policy_clients        r   RunzDescribe.Run1   s}    **4+<+<+>?F

!
!
3
3D&:J:J
KC"00FMM !//**YY 0  r   N)__name__
__module____qualname____doc__r   compute_flagsResourceArgument__annotations__classmethodr   r*    r   r   r   r      s1    
 }==>>- -r   r   EXAMPLESa      To describe an association named ``my-association'' on a network policy
    with name ``my-policy'' in region ``region-a'', run:

      $ {command} \
          --network-policy=my-policy \
          --name=my-association \
          --network-policy-region=region-a
    N)r.   
__future__r   r   r   typingr   googlecloudsdk.api_lib.computer   /googlecloudsdk.api_lib.compute.network_policiesr   googlecloudsdk.callioper	   "googlecloudsdk.command_lib.computer
   r/   3googlecloudsdk.command_lib.compute.network_policiesHiddenUniverseCompatibleReleaseTracksr    ALPHADescribeCommandr   detailed_helpr3   r   r   <module>rB      s    : &  '  7 B ( E E D%%++,t##  -  >  
 r   