
    z                     v   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 ej                  ej                  j$                  ej                  j&                         G d de             Zy)zGet Server Config.    )absolute_import)division)unicode_literals)base)container_command_util)flags)log)
propertiesc                   B     e Zd ZdZdddZ fdZed        Zd Z xZ	S )GetServerConfig$Get Kubernetes Engine server config.z{description}ze          To get the Kubernetes Engine server configuration, run:

            $ {command}
          )DESCRIPTIONEXAMPLESc                 V    t        t        | 
  |i | t        j                  | _        y )N)superr   __init__r   GetZoneOrRegionlocation_get)selfargskwargs	__class__s      *lib/surface/container/get_server_config.pyr   zGetServerConfig.__init__+   s%    	/4)4:6:.>>D    c                     t        j                  |        t        j                  j	                  |        t        j
                  j	                  |        t        j                  j	                  |        y)zAdd arguments to the parser.

    Args:
      parser: argparse.ArgumentParser, This is a standard argparser parser with
        which you can register arguments.  See the public argparse documentation
        for its capabilities.
    N)r   AddLocationFlagsr   FILTER_FLAGAddToParser
LIMIT_FLAGSORT_BY_FLAG)parsers    r   ArgszGetServerConfig.Args/   sL     
6"  (OO'!!&)r   c                 ,   | j                   d   }t        j                  j                  j                  j                  d      }| j                  |      }t        j                  j                  dj                  |             |j                  ||      S )Napi_adapterT)requiredz%Fetching server config for {location})location)contextr
   VALUEScoreprojectGetr   r	   statusPrintformatr   )r   r   adapter
project_idr&   s        r   RunzGetServerConfig.Run=   s|    ll=)G""''//33T3BJ  &HJJ/666IK"":x88r   )
__name__
__module____qualname____doc__detailed_helpr   staticmethodr"   r1   __classcell__)r   s   @r   r   r      s5    , 		-? * *9r   r   c                       e Zd ZdZd Zy)GetServerConfigAlphaBetar   c                 ,    t         j                  |d<   |S )ak  Modify the context that will be given to this group's commands when run.

    Args:
      context: {str:object}, A set of key-value pairs that can be used for
        common initialization among commands.
      args: argparse.Namespace: The same namespace given to the corresponding
        .Run() invocation.

    Returns:
      The refined command context.
    r   )r   r   )r   r'   r   s      r   FilterzGetServerConfigAlphaBeta.FilterL   s     5DDGNNr   N)r2   r3   r4   r5   r<    r   r   r:   r:   H   s
    ,r   r:   N)r5   
__future__r   r   r   googlecloudsdk.callioper   $googlecloudsdk.command_lib.containerr   r   googlecloudsdk.corer	   r
   ReleaseTracksReleaseTrackGACommandr   ALPHABETAr:   r=   r   r   <module>rH      s     &  ' ( G 6 # * D%%(()(9dll (9 *(9V D%%++T->->-C-CD  Er   