
                             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 dZdZdZdZ G d de      Zd Zd Z G d de      Z G d de      Z G d de      Z G d de      Zy)z"API Library for gcloud cloudtasks.    )absolute_import)division)unicode_literals)cmek_config)	locations)queues)tasks)apis)base
cloudtasksv2beta2v2beta3v2c                       e Zd ZdZy)UnsupportedReleaseTrackErrorz?Raised when requesting an api for an unsupported release track.N)__name__
__module____qualname____doc__     ,lib/googlecloudsdk/api_lib/tasks/__init__.pyr   r   #   s    Gr   r   c                     | t         j                  j                  k(  rt        S | t         j                  j                  k(  rt
        S | t         j                  j                  k(  rt        S t        |       N)	r   ReleaseTrackALPHAALPHA_API_VERSIONBETABETA_API_VERSIONGAGA_API_VERSIONr   release_tracks    r   ApiVersionFromReleaseTrackr$   '   s[    d''---d'',,,d''***
&}
55r   c                    | t         j                  j                  k(  r
t               S | t         j                  j                  k(  r
t               S | t         j                  j                  k(  r
t               S t        |       r   )	r   r   r   AlphaApiAdapterr   BetaApiAdapterr    GaApiAdapterr   r"   s    r   GetApiAdapterr)   2   sc    d''---d'',,,d''***>
&}
55r   c                       e Zd Zd Zy)BaseApiAdapterc                    t        j                  t        |      | _        | j                  j                  | _        t        j                  | j                  j                  | j                  j                        | _        t        j                  | j                  j                  | j                  j                        | _	        y r   )r
   GetClientInstanceAPI_NAMEclientMESSAGES_MODULEmessagesr   	Locationsprojects_locationsr   
CmekConfig)selfapi_versions     r   __init__zBaseApiAdapter.__init__?   s    ((;?DKKK//DM(()D)D)-)G)GIDN"--##T[[%C%CDr   N)r   r   r   r7   r   r   r   r+   r+   =   s    r   r+   c                        e Zd Z fdZ xZS )r&   c                 @   t         t        |   t               t	        j
                  | j                  j                  | j                  j                        | _        t        j                  | j                  j                  | j                  j                        | _	        y r   )superr&   r7   r   r   AlphaQueuesr/   r0   projects_locations_queuesr	   
AlphaTasksprojects_locations_queues_tasksr5   	__class__s    r   r7   zAlphaApiAdapter.__init__K   sk    	/4)*;<$$T[[%@%@%)[[%J%JLDK!!$++"="="&++"M"MODJr   r   r   r   r7   __classcell__r@   s   @r   r&   r&   I   s    O Or   r&   c                        e Zd Z fdZ xZS )r'   c                 @   t         t        |   t               t	        j
                  | j                  j                  | j                  j                        | _        t        j                  | j                  j                  | j                  j                        | _	        y r   )r:   r'   r7   r   r   
BetaQueuesr/   r0   r<   r	   Tasksr>   r?   s    r   r7   zBetaApiAdapter.__init__U   si    	.$()9:##DKK$?$?$(KK$I$IKDKT[[88![[HHJDJr   rA   rC   s   @r   r'   r'   S       J Jr   r'   c                        e Zd Z fdZ xZS )r(   c                 @   t         t        |   t               t	        j
                  | j                  j                  | j                  j                        | _        t        j                  | j                  j                  | j                  j                        | _	        y r   )r:   r(   r7   r!   r   Queuesr/   r0   r<   r	   rG   r>   r?   s    r   r7   zGaApiAdapter.__init___   sf    	,&~6-- ; ; $ E EGDKT[[88![[HHJDJr   rA   rC   s   @r   r(   r(   ]   rH   r   r(   N)r   
__future__r   r   r   googlecloudsdk.api_lib.tasksr   r   r   r	   googlecloudsdk.api_lib.utilr
   googlecloudsdk.callioper   r.   r   r   r!   	Exceptionr   r$   r)   objectr+   r&   r'   r(   r   r   r   <module>rR      s    ) &  ' 4 2 / . , (   H9 H66	V 	On OJ^ JJ> Jr   