
                         ^   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
dZ ej                   ej"                  j$                         G d dej&                               Z ej                   ej"                  j*                         G d dej&                               Zy)z(Create Command for Application Workload.    )absolute_import)division)unicode_literals)utils)	workloads)base)flagsz{description}a*           To create the Workload `my-workload` with discovered workload
        `my-discovered-workload` in the Application `my-app` in location
        `us-east1`, run:

          $ {command} my-workload --application=my-app --location=us-east1 --discovered-workload=my-discovered-workload
        )DESCRIPTIONEXAMPLESc                   *    e Zd ZdZeZed        Zd Zy)CreateGA&Create an Apphub application workload.c                 b    t        j                  | t        j                  j                         y Nrelease_track)r	   !AddCreateApplicationWorkloadFlagsr   ReleaseTrackGAparsers    3lib/surface/apphub/applications/workloads/create.pyArgszCreateGA.Args-   s!    	++d//22    c           	         t        j                  t        j                  j                        }t        j                  |      }t        j                  |      }|j                         }t        j                  |t        j                  j                        }|j                  |j                         |j                         |j                  |j                         |j                  |j                  |      S zRun the create command.r   )workload_idparent
async_flagdiscovered_workloaddisplay_namedescription
attributes)apisWorkloadsClientr   r   r   api_lib_utilsGetApplicationWorkloadRefGetDiscoveredWorkloadRefParentPopulateAttributesCreateNameRelativeNameasync_r!   r"   selfargsclientworkload_refdis_workload_ref
parent_refr#   s          r   RunzCreateGA.Run3   s    !!0A0A0D0DEF ::4@L$==dC$$&J11D--00J == %%'&&(;;,99;&&$$   r   N	__name__
__module____qualname____doc___DETAILED_HELPdetailed_helpstaticmethodr   r6    r   r   r   r   '   !    . - 
r   r   c                   *    e Zd ZdZeZed        Zd Zy)CreateAlphar   c                 b    t        j                  | t        j                  j                         y r   )r	   r   r   r   ALPHAr   s    r   r   zCreateAlpha.ArgsN   s!    	++d//55r   c           	         t        j                  t        j                  j                        }t        j                  |      }t        j                  |      }|j                         }t        j                  |t        j                  j                        }|j                  |j                         |j                         |j                  |j                         |j                  |j                  |      S r   )r$   r%   r   r   rD   r&   r'   r(   r)   r*   r+   r,   r-   r.   r!   r"   r/   s          r   r6   zCreateAlpha.RunT   s    !!0A0A0G0GHF ::4@L$==dC$$&J11D--33J == %%'&&(;;,99;&&$$   r   Nr7   r?   r   r   rB   rB   H   r@   r   rB   N)r;   
__future__r   r   r   googlecloudsdk.api_lib.apphubr   r&   *googlecloudsdk.api_lib.apphub.applicationsr   r$   googlecloudsdk.callioper   !googlecloudsdk.command_lib.apphubr	   r<   ReleaseTracksr   r   CreateCommandr   rD   rB   r?   r   r   <module>rM      s    / &  ' @ H ( 3 #	 D%%(()t!!  *@ D%%++,$$$  -r   