
    `                     j   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
ZddZdeiZej"                   ej$                  ej&                  j(                  ej&                  j*                  ej&                  j,                         G d dej.                                      Zy)z/`gcloud certificate-manager maps list` command.    )absolute_import)division)unicode_literals)certificate_maps)base)resource_args)util)resource_transformztable(
    name.scope(certificateMaps):sort=1,
    gclbTargets.gclbTargetsToString(undefined='-'):label=ENDPOINTS,
    description,
    createTime.date('%Y-%m-%d %H:%M:%S %Oz', undefined='-')
)
c           	      D   | s|S g }| D ]  }t        j                  |dd      }||c S |D ]]  }t        j                  |dd      }t        j                  |dd      }||6|D ]#  }|j                  dj                  ||             % _  |rdj	                  |      S |S )a3  Transforms GclbTargets to more compact form.

  It uses following format: IP_1:port_1\nIP_2:port_2\n...IP_n:port_n.

  Args:
    targets: GclbTargets API representation.
    undefined: str, value to be returned if no IP:port pair is found.

  Returns:
    String representation to be shown in table view.
  	ipConfigsN	ipAddressportsz{}:{}
)r
   GetKeyValueappendformatjoin)	targets	undefinedresulttarget
ip_configs	ip_config
ip_addressr   ports	            ,lib/surface/certificate_manager/maps/list.py_TransformGclbTargetsr   %   s     
&f#//TJJ	%11)[$Oj ,,YFe		u}$gnnZ67   	  %6	3)3    gclbTargetsToStringc                   &    e Zd ZdZed        Zd Zy)ListzList certificate maps.

  List Certificate Manager maps in the project.

  ## EXAMPLES

  To list all certificate maps in the project, run:

    $ {command}
  c                    t        j                  | dd       | j                  j                  t        j
                         | j                  j                  t               | j                  j                  t               y )Nzto list maps forF)verball_default_location)
r   AddLocationResourceArgdisplay_info
AddUriFuncr	   CertificateMapUriFunc	AddFormat_FORMATAddTransforms_TRANSFORMS)parsers    r   Argsz	List.ArgsV   s[    (('eE
""4#=#=>
!!'*
%%k2r   c                     t        j                         }|j                  j                  j	                         }|j                  ||j                  |j                        S )N)r   CertificateMapClientCONCEPTSlocationParser!   limit	page_size)selfargsclientlocation_refs       r   RunzList.Run^   sC    224F==))//1L;;|TZZ@@r   N)__name__
__module____qualname____doc__staticmethodr.   r:    r   r   r!   r!   G   s!    	 3 3Ar   r!   N) )r>   
__future__r   r   r   *googlecloudsdk.api_lib.certificate_managerr   googlecloudsdk.callioper   .googlecloudsdk.command_lib.certificate_managerr   r	   googlecloudsdk.core.resourcer
   r*   r   r,   DefaultUniverseOnlyReleaseTracksReleaseTrackALPHABETAGAListCommandr!   r@   r   r   <module>rN      s    6 &  ' G ( H ? ;4< 0
 D%%++T->->-C-C%%((*A4 A* Ar   