
     	                         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ZdZ G d d	e	      Z
 G d
 de
      Zd Zd Zd Zd Zd Zy)z3Utilities for `gcloud memcache instances` commands.    )absolute_import)division)unicode_literals)arg_parsersN)ztrack-sizeszwatcher-logbuf-sizezworker-logbuf-sizezlru-crawlerzidle-timeoutzlru-maintainerzmaxconns-fastzhash-algorithmc                       e Zd ZdZy)ErrorzExceptions for this module.N__name__
__module____qualname____doc__     9lib/googlecloudsdk/command_lib/memcache/instances_util.pyr   r      s    #r   r   c                       e Zd ZdZy)InvalidTimeOfDayErrorz&Error for passing invalid time of day.Nr	   r   r   r   r   r   "   s    .r   r   c                 0    | dk  s| dkD  rt        d      | S )Nr      z4A valid time of day must be specified (0, 23) hours.)r   )maintenance_window_start_times    r   $CheckMaintenanceWindowStartTimeFieldr   &   s*    "Q&*G"*L
>  
'&r   c                 <    | dz  }t        j                  |      dz   S )Ni  s)six	text_type)maintenance_window_durationduration_in_secondss     r   ConvertDurationToJsonFormatr   .   s"    3d:	*	+c	11r   c                 b    t        j                  ddgd      }t         ||       dz  dz        S )z7Declarative command argument type for node-memory flag.MBGB)suggested_binary_size_scalesdefault_uniti   )r   
BinarySizeint)valuesizes     r   
NodeMemoryr'   3   s5    			$($<d
D$	T%[4$&	''r   c                 B     t        j                  t              |       S )z6Declarative command argument type for parameters flag.)key_type)r   ArgDict_FormatExtendedOptions)r%   s    r   
Parametersr,   :   s    	=		&<	=e	DDr   c                 :    | t         v r| j                  dd      S | S )z>Replaces dash with underscore for extended options parameters.-_)MEMCACHE_EXTENDED_OPTIONSreplace)keys    r   r+   r+   ?   s!    %%;;sC  	*r   )r   
__future__r   r   r   googlecloudsdk.callioper   r   r0   	Exceptionr   r   r   r   r'   r,   r+   r   r   r   <module>r6      sS    : &  ' / 
/ $I $/E /'2
(E
r   