
                            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                  ej                  j                  ej                  j                         G d	 d
ej                               Zy)z%gcloud pubsub emulator start command.    )absolute_import)division)unicode_literals)arg_parsers)base)pubsub_util)utilc                   .    e Zd ZdZddiZed        Zd Zy)StartaJ  Start a local pubsub emulator.

  This command starts a local pubsub emulator.

  On successful start up, you should expect to see:

  ```
  ...
  [pubsub] This is the Google Pub/Sub fake.
  [pubsub] Implementation may be incomplete or differ from the real system.
  ...
  [pubsub] INFO: Server started, listening on 8538
  ```
  EXAMPLESzK
To start a local pubsub emulator, run:

  $ {command} --data-dir=DATA-DIR
c                 0    | j                  ddd d       y )Nz--host-portFc                 D    t         j                  j                  | d      S NT)ipv6_enabled)r   HostPortParse)args    %lib/surface/emulators/pubsub/start.py<lambda>zStart.Args.<locals>.<lambda>9   s    --33Cd3K    zUThe host:port to which the emulator should be bound. The default value is [::1]:8085.)requiredtypehelp)add_argument)parsers    r   Argsz
Start.Args4   s#    
K$	  %r   c                    |j                   sGt        j                  j                  t	        j
                  t        j                        d      |_         t        j                  |      5 }t	        j                  t        j                  |      |j                         t	        j                  |t        j                         d d d        y # 1 sw Y   y xY wr   )	host_portr   r   r   r	   GetHostPortr   PUBSUBr   WriteEnvYamlGetEnvdata_dirPrefixOutput)selfargspubsub_processs      r   Runz	Start.Run>   s    >>"++11$2B2B


3,0 2 2dn 
		4	 N
**40$--@
(:(:; 
!	 	 s   )AC

CN)__name__
__module____qualname____doc__detailed_helpstaticmethodr   r(    r   r   r   r      s1       - % %<r   r   N)r,   
__future__r   r   r   googlecloudsdk.callioper   r   $googlecloudsdk.command_lib.emulatorsr   r	   ReleaseTracksReleaseTrackALPHABETACommandr   r/   r   r   <module>r8      sf    , &  ' / ( < 5 D%%++T->->-C-CD)<DLL )< E)<r   