
                            d Z ddlmZ ddlmZ ddlmZ ddlZddlmZ ddlmZ ddl	m
Z
 dd	lmZ d
 Zd Z e
j                  e
j                   j"                         G d de
j$                               Z e
j                  e
j                   j(                         G d de
j$                               Z e
j                  e
j                   j,                         G d de             Zy)z#gcloud dns operations list command.    )absolute_import)division)unicode_literalsN)
operations)util)base)flagsc                    | j                   j                  d       t        j                  j	                  |        t        j
                  j	                  |        t        j                  ddd      j                  |        y)z:Add arguments to the parser for `operations list` command.z
      table(
        zoneContext.oldValue.name:label=ZONE_NAME:sort=1,
        id,
        startTime,
        user,
        type
      )
  z"Name of one or more zones to read.FT)
positionalpluralN)	display_info	AddFormatr   URI_FLAGRemoveFromParserPAGE_SIZE_FLAGr	   GetZoneResourceArgAddToParserparsers    "lib/surface/dns/operations/list.py_CommonArgsr      se     	 !  --  (&&v.*t%%0[%8    c                      j                   j                  j                         }t        j                  j                   fd|D              S )Nc              3   X   K   | ]!  }j                  |j                          # yw))limitN)Listr   ).0zargsoperations_clients     r   	<genexpr>z_List.<locals>.<genexpr>4   s+      'F;DaQdjj19s   '*)CONCEPTSzonesParse	itertoolschainfrom_iterable)r    r   	zone_refss   `` r   _Listr)   2   sC    mm!!''))		&	& 'F;D'F 
F Fr   c                   &    e Zd ZdZed        Zd Zy)ListBeta  List Cloud DNS operations.

  This command displays Cloud DNS operations for one or more Cloud DNS
  managed-zones (see `$ gcloud dns managed-zones --help`).

  ## EXAMPLES

  To see the list of all operations for two managed-zones, run:

    $ {command} --zones=zone1,zone2

  To see the last 5 operations for two managed-zones, run:

    $ {command} --zones=zone1,zone2 --sort-by=~start_time --limit=5
  c                     t        |        y Nr   r   s    r   ArgszListBeta.ArgsJ   
    r   c                     t        j                  | j                               }t        j                  j                  |      }t        ||      S r.   )r   GetApiFromTrackReleaseTrackr   ClientFromApiVersionr)   )selfr   api_versionr    s       r   RunzListBeta.RunN   s@    &&t'8'8':;K"))88E"D))r   N__name__
__module____qualname____doc__staticmethodr0   r9    r   r   r+   r+   8   s        *r   r+   c                   &    e Zd ZdZed        Zd Zy)r   r,   c                     t        |        y r.   r/   r   s    r   r0   z	List.Argsf   r1   r   c                 X    t         j                  j                  d      }t        ||      S )Nv1)r   r5   r6   r)   )r7   r   r    s      r   r9   zList.Runj   s'    "))88>"D))r   Nr:   r@   r   r   r   r   T   s        *r   r   c                       e Zd ZdZy)	ListAlphar,   N)r;   r<   r=   r>   r@   r   r   rF   rF   o   s    r   rF   )r>   
__future__r   r   r   r%   googlecloudsdk.api_lib.dnsr   r   googlecloudsdk.callioper   googlecloudsdk.command_lib.dnsr	   r   r)   ReleaseTracksr4   BETAListCommandr+   GAr   ALPHArF   r@   r   r   <module>rP      s    * &  '  1 + ( 09,F D%%**+*t * ,*6 D%%(()*4 * **4 D%%++,  -r   