
                            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 dd	l	mZ dd
lmZ  ej                  ej                   j"                  ej                   j$                         G d dej&                               Z ej                  ej                   j*                         G d dej&                               Zy)z.`gcloud tasks create-app-engine-task` command.    )absolute_import)division)unicode_literals)GetApiAdapter)base)	constants)flags)parsers)logc                   0    e Zd ZdZdddZed        Zd Zy)CreateAppEngine.Create and add a task that targets App Engine."          {description}
          zv          To create a task:

              $ {command} --queue=my-queue --relative-uri=/handler-path my-task
         DESCRIPTIONEXAMPLESc                 X    t        j                  |        t        j                  |        y )Nr	   AddCreateAppEngineTaskFlagsAddLocationFlagparsers    +lib/surface/tasks/create_app_engine_task.pyArgszCreateAppEngine.Args+   s    	%%f-	&!    c                    t        | j                               }|j                  }t        j                  |j
                  |j                        }|j                  r t        j                  |j                  |      nd }t        j                  |t        j                  |j                  | j                               }|j                  |||j                  |j                        }t!        j"                  |j$                  d       |S N)release_track)schedule_timeapp_engine_http_requesttaskr   ReleaseTracktasksr
   
ParseQueuequeuelocationr!   	ParseTaskParseCreateTaskArgsr   APP_ENGINE_TASKmessagesCreatescheduleTimeappEngineHttpRequestr   CreatedResourcenameselfargsapitasks_client	queue_reftask_reftask_configcreate_responses           r   RunzCreateAppEngine.Run0       
))+
,C99L""4::t}}=I/3yy   !*,>B --i'''')+K #))8!.. + @ @ * BO ,,f5r   N__name__
__module____qualname____doc__detailed_helpstaticmethodr   r:    r   r   r   r      /    6		- " "r   r   c                   0    e Zd ZdZdddZed        Zd Zy)AlphaCreateAppEnginer   r   zm          To create a task:

              $ {command} --queue=my-queue --url=/handler-path my-task
         r   c                 \    t        j                  | d       t        j                  |        y )NT)is_alphar   r   s    r   r   zAlphaCreateAppEngine.ArgsO   s     	%%ft<	&!r   c                    t        | j                               }|j                  }t        j                  |j
                  |j                        }|j                  r t        j                  |j                  |      nd }t        j                  |t        j                  |j                  | j                               }|j                  |||j                  |j                        }t!        j"                  |j$                  d       |S r   r"   r1   s           r   r:   zAlphaCreateAppEngine.RunT   r;   r   Nr<   rC   r   r   rF   rF   A   rD   r   rF   N)r@   
__future__r   r   r   googlecloudsdk.api_lib.tasksr   googlecloudsdk.callioper    googlecloudsdk.command_lib.tasksr   r	   r
   googlecloudsdk.corer   ReleaseTracksr#   BETAGACreateCommandr   ALPHArF   rC   r   r   <module>rT      s    5 &  ' 6 ( 6 2 4 # D%%**D,=,=,@,@A d((   B F D%%++, 4--   - r   