
    	                         S r SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSK	J
r
  SSKJr   " S	 S
\R                  5      rg)zThe meta cache list command.    )absolute_import)division)unicode_literals)base)
cache_util)log)
exceptionsc                   .    \ rS rSrSr\S 5       rS rSrg)List   z8List the tables or table contents in a persistent cache.c                 R    [         R                  " U 5        U R                  SSSS9  g )Ntables*zThe table names or name patterns to list, where `?` matches any character and ```*``` matches any string of zero or more characters. If omitted then a table of all tables is displayed.)nargshelp)r   AddCacheFlagadd_argument)parsers    lib/surface/meta/cache/list.pyArgs	List.Args   s.    F#
      c           	          [         R                  " UR                  5       n[        R                  " SR                  UR                  5      5        UR                  (       a  UR                   VVs/ s H  nUR                  U5        H  nUPM     M      nnnU(       d>  [         R                  " SR                  SR                  UR                  5      5      5      eUR                  S5      (       d  SUl        / nU H?  n UR                  USS9nUR                  UR                  UR                  SS9S	.5        MA     UsS S S 5        $ UR                  S5      (       d  S
Ul        UR                  5       n[#        U5       Vs/ s H  oBR                  USS9PM     snsS S S 5        $ s  snnf ! [        R                   a!  n[        R                   " U5         S nAM  S nAff = fs  snf ! , (       d  f       g = f)Nzcache name {}zNo tables matched [{}].,formatjsonF)create)ignore_expiration)namedatazVtable[box](name, columns:label=COL, keys:label=KEY, timeout, is_expired:label=EXPIRED))r   r   )r   GetCachecacher   infor   r   r   SelectNoTablesMatchedjoinIsSpecifiedTableappendcache_exceptionsErrorwarningsorted)	selfargsr"   patternr   namesresultstablees	            r   RunList.Run*   s   			TZZ	(E	hh%%ejj12	%)[[ 4['"\\'2T 2 [ 4**+D+K+Khht{{#,% & &))$+DKKUK3ENN

u=   + 
)	(. h''<llne?Ee}M}tkktEk2}M7 
)	(4 "'' KKNN N7 
)	(s[   AG/1%F,A,G/;F2>G/:G/G* G/,G/2G'G"G/"G''G//
G= N)	__name__
__module____qualname____firstlineno____doc__staticmethodr   r5   __static_attributes__r7   r   r   r   r      s    @ Nr   r   N)r<   
__future__r   r   r   googlecloudsdk.callioper   googlecloudsdk.command_lib.metar   googlecloudsdk.corer   googlecloudsdk.core.cacher	   r*   ListCommandr   r7   r   r   <module>rE      s3     # &  ' ( 6 # D*N4 *Nr   