
    ~                        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dlmZ ddlmZ ej*                   ej,                  ej.                  j0                         G d dej2                                      Zej*                   ej,                  ej.                  j6                         G d de                    Z e
j:                  d      e_        y)z Command for listing wire groups.    )absolute_import)division)unicode_literals)Any)
list_pager)base_classes)filter_rewrite)base)flags)
properties)resource_projection_specc                   0    e Zd ZdZdZed        ZdefdZy)ListList wire groups.Nc                     t        j                         | _        | j                  j                  |       |j                  j                  d       y )Nz
        table(
          name,
          description,
          crossSiteNetwork,
          wireGroupProperties.type,
          wireProperties.bandwidthUnmetered,
          wireProperties.faultResponse,
          adminEnabled
        )
    cross_site_network_flags(CrossSiteNetworkArgumentForOtherResourceCROSS_SITE_NETWORK_ARGAddArgumentdisplay_info	AddFormatclsparsers     5lib/surface/compute/interconnects/wire_groups/list.pyArgsz	List.Args(   sG     	!IIK  **62
!! 
# 
	    argsc                 l   t        j                  | j                               }|j                  j                  }|j
                  }t        j                  j                  j                  j                         }|j                         }t        j                  |j                  |j                        }t!        j"                         j%                  |j&                  |      \  |_        }|j)                  ||j*                  |      }	t-        j.                  |j0                  |	d|j2                  d      S )zRun the list command.

    Args:
      args: The arguments of the command.

    Returns:
      Result of wire groups list requests.
    )symbolsaliases)defaults)projectcrossSiteNetworkfilteritemsN)fieldlimit
batch_size)r   ComputeApiHolderReleaseTrackclientapitools_clientMESSAGES_MODULEr   VALUEScorer$   	GetOrFailGetDisplayInfor   ProjectionSpec
transformsr"   r	   RewriterRewriter&   ComputeWireGroupsListRequestcross_site_networkr   YieldFromList
wireGroupsr)   )
selfr   holderr-   messagesr$   r   r#   filter_exprrequests
             r   RunzList.Run:   s    **4+<+<+>?F]]**F%%H$$,,668G&&(L'66''1E1EH  .668@@h  A  DK 3300 4 G ##jj r   )	__name__
__module____qualname____doc__r   classmethodr   r   rA    r   r   r   r   !   s+     	 	"#c #r   r   c                   $    e Zd ZdZdZed        Zy)	ListAlphar   Nc                     t        j                         | _        | j                  j                  |       |j                  j                  d       y )Nax  
        table(
          name,
          description,
          crossSiteNetwork,
          wireGroupProperties.type,
          wireProperties.bandwidthUnmetered,
          wireProperties.bandwidthMetered,
          wireProperties.networkServiceClass,
          wireProperties.bandwidthAllocation,
          wireProperties.faultResponse,
          adminEnabled
        )
    r   r   s     r   r   zListAlpha.Argsg   sG     	!IIK  **62
!! # 	r   )rB   rC   rD   rE   r   rF   r   rG   r   r   rI   rI   `   s     	 	r   rI   zwire groupsN)rE   
__future__r   r   r   typingr   apitools.base.pyr   googlecloudsdk.api_lib.computer   r	   googlecloudsdk.callioper
   Dgooglecloudsdk.command_lib.compute.interconnects.cross_site_networksr   r   googlecloudsdk.corer   googlecloudsdk.core.resourcer   UniverseCompatibleReleaseTracksr,   BETAListCommandr   ALPHArI   GetGlobalListerHelpdetailed_helprG   r   r   <module>rZ      s     ' &  '  ' 7 9 ( r * A D%%**+:4 : , :z D%%++,	 	 - 	6 6\55mD r   