ó
    €Ï  ã                   ó®   • S r SSKJr  SSKJr  SSKJr  SSKJr  SSKJr	  SSKJ
r  SSKJr  S	rS
rSr " S S\	R"                  5      rSS jrS rS rS rg)z:Flags and helpers for the compute firewall-rules commands.é    )Úabsolute_import)Údivision)Úunicode_literals)Úarg_parsers)Ú
completers)Úflags)Ú	arg_utilsa­  table(
                    name,
                    network,
                    direction,
                    priority,
                    sourceRanges.list():label=SRC_RANGES,
                    destinationRanges.list():label=DEST_RANGES,
                    allowed[].map().firewall_rule().list():label=ALLOW,
                    denied[].map().firewall_rule().list():label=DENY,
                    sourceTags.list():label=SRC_TAGS,
                    sourceServiceAccounts.list():label=SRC_SVC_ACCT,
                    targetTags.list():label=TARGET_TAGS,
                    targetServiceAccounts.list():label=TARGET_SVC_ACCT,
                    disabled
                )zØ    table(
      name,
      network.basename(),
      direction,
      priority,
      allowed[].map().firewall_rule().list():label=ALLOW,
      denied[].map().firewall_rule().list():label=DENY,
      disabled
    )z•To show all fields of the firewall, please show in JSON format: --format=json
To show all fields in table format, please see the examples in --help.
c                   ó(   ^ • \ rS rSrU 4S jrSrU =r$ )ÚFirewallsCompleteré=   c                 ó4   >• [         [        U ]
  " SSSS.UD6  g )Núcompute.firewallsz!compute firewall-rules list --uri)Ú
collectionÚlist_command© )Úsuperr   Ú__init__)ÚselfÚkwargsÚ	__class__s     €Ú>lib/googlecloudsdk/command_lib/compute/firewall_rules/flags.pyr   ÚFirewallsCompleter.__init__?   s(   ø€ Ü	Ô
˜dÒ,ð Ø&Ø8ñð óó    r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   Ú__static_attributes__Ú__classcell__)r   s   @r   r   r   =   s   ø† ÷ó r   r   c                 ó:   • [         R                  " S[        UU SS9$ )Nzfirewall ruler   )Úresource_nameÚ	completerÚpluralÚrequiredÚglobal_collection)Úcompute_flagsÚResourceArgumentr   )r$   r#   s     r   ÚFirewallRuleArgumentr(   F   s$   € Ü	×	'Ò	'Ø#Ü"ØØØ+ñ
-ð -r   c                 óB   • U R                  S[        R                  SS9  g )Nz--enable-loggingaM        Enable logging for the firewall rule. Logs will be exported to
      StackDriver. Firewall logging is disabled by default. To enable logging
      for an existing rule, run:

        $ {command} MY-RULE --enable-logging

      To disable logging on an existing rule, run:

        $ {command} MY-RULE --no-enable-logging
      )ÚactionÚhelp)Úadd_argumentr   ÚStoreTrueFalseAction)Úparsers    r   ÚAddEnableLoggingr/   O   s&   € Ø×ÑØÜ×-Ñ-ð

ð ò r   c                 ó^   • [         R                  " SU R                  R                  SSS.SS9$ )Nz--logging-metadatazinclude-allzexclude-all)ÚINCLUDE_ALL_METADATAÚEXCLUDE_ALL_METADATAzyAdds or removes metadata fields to or from the reported firewall logs. Can only be specified if --enable-logging is true.)Úcustom_mappingsÚhelp_str)r	   ÚChoiceEnumMapperÚFirewallLogConfigÚMetadataValueValuesEnum)Úmessagess    r   ÚGetLoggingMetadataArgr9   `   s7   € Ü	×	#Ò	#ØØ× Ñ ×8Ñ8à"/Ø"/ñðñ	
ð 	r   c                 óL   • [        U5      R                  R                  U 5        g )N)r9   Ú
choice_argÚAddToParser)r.   r8   s     r   ÚAddLoggingMetadatar=   m   s   € Ü˜Ó!×,Ñ,×8Ñ8¸Õ@r   N)TF)Ú__doc__Ú
__future__r   r   r   Úgooglecloudsdk.callioper   Ú"googlecloudsdk.command_lib.computer   Úcompute_completersr   r&   Ú$googlecloudsdk.command_lib.util.apisr	   ÚLIST_WITH_ALL_FIELDS_FORMATÚDEFAULT_LIST_FORMATÚLIST_NOTICEÚListCommandCompleterr   r(   r/   r9   r=   r   r   r   Ú<module>rH      s_   ðñ Aå &Ý Ý 'å /Ý OÝ EÝ :ðÐ ð"		Ð ð€ôÐ+×@Ñ@ô ô-òò"
óAr   