
    L	                         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  G d
 de
j"                        Zy)z!Command to describe SSL policies.    )absolute_import)division)unicode_literals)base_classes)ssl_policies_utils)base)flags)scopec                   *    e Zd ZdZdZed        Zd Zy)Describea  Describe a Compute Engine ssl policy.

  *{command}* is used to display all data associated with a Compute Engine
  SSL policy in a project.

  An SSL policy specifies the server-side support for SSL features. An SSL
  policy can be attached to a TargetHttpsProxy or a TargetSslProxy. This affects
  connections between clients and the load balancer. SSL
  policies do not affect the connection between the load balancers and the
  backends. SSL policies are used by Application Load Balancers and proxy
  Network Load Balancers.
  Nc                 p    t        j                         | _        | j                  j                  |d       y )Ndescribe)operation_type)r	   GetSslPolicyMultiScopeArgumentSSL_POLICY_ARGAddArgument)clsparsers     ,lib/surface/compute/ssl_policies/describe.pyArgszDescribe.Args-   s,    ==?C""6*"E    c                 P   t        j                  | j                               }t        j                  |      }| j
                  j                  ||j                  t        j                  |j                        t        j                  j                        }|j                  |      S )z,Issues the request to describe a SSL policy.)scope_listerdefault_scope)r   ComputeApiHolderReleaseTrackr   SslPolicyHelperr   ResolveAsResource	resourcescompute_flagsGetDefaultScopeListerclientcompute_scope	ScopeEnumGLOBALr   )selfargsholderhelperrefs        r   RunzDescribe.Run2   s    **4+<+<+>?F//7F



/
/"88G#--44	 0 6C
 ??3r   )__name__
__module____qualname____doc__r   classmethodr   r+    r   r   r   r      s'     .F F	 r   r   N)r/   
__future__r   r   r   googlecloudsdk.api_lib.computer   +googlecloudsdk.api_lib.compute.ssl_policiesr   googlecloudsdk.callioper   "googlecloudsdk.command_lib.computer	   r    r
   r#   /googlecloudsdk.command_lib.compute.ssl_policiesDescribeCommandr   r1   r   r   <module>r9      s7    ( &  ' 7 J ( E E A t##  r   