
    A                         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  G d
 de	j                         Zy)z3Command for setting named ports in instance groups.    )absolute_import)division)unicode_literals)base_classes)instance_groups_utils)base)flags)scopec                   >    e Zd ZdZed        Zd Zej                  Z	y)SetNamedPortsAlphaz%Sets named ports for instance groups.c                 l    t         j                  j                  |        t        j                  |        y )N)r	   MULTISCOPE_INSTANCE_GROUP_ARGAddArgumentAddNamedPortsArgs)parsers    6lib/surface/compute/instance_groups/set_named_ports.pyArgszSetNamedPortsAlpha.Args    s$    	''33F;	F#    c                    t        j                  | j                               }|j                  }t        j
                  j                  ||j                  t        j                  j                  t        j                  |            }t        j                  |j                  |j                         }t        j"                  |||      \  }}|j%                  |d|fg      S )N)default_scopescope_listerSetNamedPorts)r   ComputeApiHolderReleaseTrackclientr	   r   ResolveAsResource	resourcescompute_scope	ScopeEnumZONEcompute_flagsGetDefaultScopeListerr   ValidateAndParseNamedPortsArgsmessagesnamed_portsGetSetNamedPortsRequestForGroupMakeRequests)selfargsholderr   	group_refportsrequestservices           r   RunzSetNamedPortsAlpha.Run%   s    **4+<+<+>?F]]F33EEfm.E.E.J.J"88@ F BI "@@))+E -LL	5"GW/7 CDEEr   N)
__name__
__module____qualname____doc__staticmethodr   r/   r   SET_NAMED_PORTS_HELPdetailed_help r   r   r   r      s*    -$ $F (<<-r   r   N)r3   
__future__r   r   r   googlecloudsdk.api_lib.computer   r   googlecloudsdk.callioper   "googlecloudsdk.command_lib.computer	   r!   r
   r   2googlecloudsdk.command_lib.compute.instance_groupsSilentCommandr   r7   r   r   <module>r>      s7    : &  ' 7 @ ( E E D=++ =r   