
    [	                     .   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  e
j                  d	d
      Zej                  j                   j#                         j%                         Zd Z G d dej*                        Zd Zd Zd Zd Zy)z#Utils for Network Actions commands.    )absolute_import)division)unicode_literals)encoding)util)apis)arg_parsersnetworkservicesv1alpha1c                       y)zSet default location to global.global r       6lib/googlecloudsdk/command_lib/network_actions/util.pySetLocationAsGlobalr       s    	r   c                        e Zd Z fdZ xZS )	LogConfigc                     t         t        |   t        j                         t        j
                  dd      t               ddg       y )Ng        g      ?)enablezsample-ratezmin-log-levelr   )specrequired_keys)superr   __init__r	   
ArgBooleanBoundedFloat_GetLogLevelValidator)self	__class__s    r   r   zLogConfig.__init__'   sE    	)T#!,,.&33C=24

  j $ r   )__name__
__module____qualname__r   __classcell__)r   s   @r   r   r   %   s     r   r   c                  x    t        j                  d dj                  dj                  t                    d       S )Nc                     | t         v S N)LOG_LEVEL_VALUES)ks    r   <lambda>z'_GetLogLevelValidator.<locals>.<lambda>4   s
    %%r   z6Only the following keys are valid for log level: [{}].z, c                 "    | j                         S r%   )upper)xs    r   r(   z'_GetLogLevelValidator.<locals>.<lambda>8   s
    	r   )r	   CustomFunctionValidatorformatjoinr&   r   r   r   r   r   2   s8    		,	,%>EE
))$
% 
 r   c                     | j                         D ci c]  \  }}t        |      | |    }}}t        j                  |t        j
                        S c c}}w r%   )items_ConvertToCamelCaser   DictToMessagemessagesWasmPluginLogConfig)parsed_dictkeyvaluelog_config_dicts       r   GetLogConfigr9   <   s`     $))++*#u #C 00+   
		1M1M	NN	s   Ac                 f    | j                  d      }|d   dj                  d |dd D              z   S )z&Converts kebab-case name to camelCase.-r    c              3   <   K   | ]  }|j                           y wr%   )title).0r+   s     r   	<genexpr>z&_ConvertToCamelCase.<locals>.<genexpr>G   s     7h1779hs      N)splitr.   )nameparts     r   r1   r1   D   s3    	C$	a2777d12h77	77r   c                     | t         j                  v rt         j                  |    S t        dj                  |             )NzUnsupported Release Track: {})r   API_VERSION_FOR_TRACK
ValueErrorr-   )tracks    r   GetApiVersionrI   J   s8    
d(((%%e,,
4;;EB
CCr   N)__doc__
__future__r   r   r   apitools.base.pyr   &googlecloudsdk.api_lib.network_actionsr   googlecloudsdk.api_lib.utilr   googlecloudsdk.callioper	   GetMessagesModuler3   r4   MinLogLevelValueValuesEnumto_dictkeysr&   r   ArgDictr   r   r9   r1   rI   r   r   r   <module>rU      s    * &  ' % 7 , / "4!!"3Z@  ;;CCEJJL 


## 
O8Dr   