
    	                     t   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	 jr\R                  " \R                  R                   5       " S
 S\R"                  5      5       r\R                  " \R                  R&                  \R                  R(                  5       " S S\5      5       rg)z"Cloud Pub/Sub topics list command.    )absolute_import)division)unicode_literals)topics)base)util)
propertiesc              #      #    [         R                  " 5       nUR                  [        R                  " 5       U R
                  S9 H$  nU(       a  [        R                  " U5      nUv   M&     g 7f)N)	page_size)r   TopicsClientListr   ParseProjectr   ListTopicDisplayDict)argslegacy_outputclienttopics       !lib/surface/pubsub/topics/list.py_Runr      sP      &{{4,,.$..{Ie''.e
K Js   A,A.c                   8    \ rS rSrSrSSS.r\S 5       rS rSr	g	)
r   #   ,Lists Cloud Pub/Sub topics within a project.z          Lists all of the Cloud Pub/Sub topics that exist in a given project that
          match the given topic name filter.a            To filter results by topic name (ie. only show topic 'my-topic'), run:

            $ {command} --filter="name.scope(topic):'my-topic'"

          To combine multiple filters (with AND or OR), run:

            $ {command} --filter="name.scope(topic):'my-topic' OR name.scope(topic):'my-other-topic'"

          To filter topics that match an expression:

            $ {command} --filter="name.scope(topic):'my-topic_*'"
          )DESCRIPTIONEXAMPLESc                     U R                   R                  S5        U R                   R                  [        R                  5        g )Nyaml)display_info	AddFormat
AddUriFuncr   TopicUriFunc)parsers    r   Args	List.Args<   s0    
!!&)
""4#4#45    c                     [        U5      $ )N)r   )selfr   s     r   RunList.RunA   s    :r$    N)
__name__
__module____qualname____firstlineno____doc__detailed_helpstaticmethodr"   r'   __static_attributes__r)   r$   r   r   r   #   s/    40-* 6 6r$   r   c                       \ rS rSrSrS rSrg)ListBetaE   r   c                 x    [         R                  R                  R                  R	                  5       n[        XS9$ )N)r   )r	   VALUESpubsubr   GetBoolr   )r&   r   r   s      r   r'   ListBeta.RunI   s-    %%,,::BBDM22r$   r)   N)r*   r+   r,   r-   r.   r'   r1   r)   r$   r   r3   r3   E   s
    43r$   r3   N)F)r.   
__future__r   r   r   googlecloudsdk.api_lib.pubsubr   googlecloudsdk.callioper   !googlecloudsdk.command_lib.pubsubr   googlecloudsdk.corer	   r   ReleaseTracksReleaseTrackGAListCommandr   BETAALPHAr3   r)   r$   r   <module>rE      s    ) &  ' 0 ( 2 * D%%(()4  *B D%%**D,=,=,C,CD3t 3 E3r$   