
    
                     ~    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r " S	 S
\R                  5      rg)z,Cloud Domains Registration-specific printer.    )absolute_import)division)print_function)unicode_literals)custom_printer_base)yaml_printerregistrationc                   @    \ rS rSrSr/ SQrSS/rS rS rS r	S	 r
S
rg)RegistrationPrinter   zNPrints the Cloud Domains registration in YAML format with custom fields order.)name
createTime
domainNamestateissues
expireTimelabelsmanagementSettingsdnsSettingscontactSettingspendingContactSettingssupportedPrivacyr   r   c                 T    X R                   ;   a  [        X/ 5        g [        XS 5        g )N)_KNOWN_REPEATED_FIELDSsetattr)selfr	   fields      >lib/googlecloudsdk/command_lib/domains/registration_printer.py_ClearFieldRegistrationPrinter._ClearField'   s"    +++l2&l4(    c                 v    U R                    H)  n[        X#S 5      nU(       d  M  UR                  X40SS9  M+     g )NFdelimit)_KNOWN_FIELDS_BY_IMPORTANCEgetattr	AddRecord)r   printerr	   r   records        r   _TransformKnownFields)RegistrationPrinter._TransformKnownFields-   s8    11|D1f	5/59 2r!   c                 >   U R                    H'  n[        X#S 5      (       d  M  U R                  X#5        M)     SnUR                  5       (       a  SnUR	                  5        H!  n[        X%R
                  5      (       d  M  SnM#     U(       d  UR                  USS9  g g )NTFr#   )r%   r&   r   all_unrecognized_fields
all_fieldsr   r'   )r   r(   r	   r   finishedfs         r   _TransformRemainingFields-RegistrationPrinter._TransformRemainingFields3   s    11	d	+	+- 2 H++--h$$&	vv	&	& ' e4 r!   c                 r    [         R                  " 5       nU R                  X!5        U R                  X!5        g)z,Transform a registration into a YAML output.N)ypYamlPrinterr*   r1   )r   r	   yamls      r   	TransformRegistrationPrinter.TransformC   s*    >>Dt2""46r!    N)__name__
__module____qualname____firstlineno____doc__r%   r   r   r*   r1   r7   __static_attributes__r9   r!   r   r   r      s/    V! %&89):5 7r!   r   N)r>   
__future__r   r   r   r   googlecloudsdk.core.resourcer   cpr   r4   REGISTRATION_PRINTER_FORMATCustomPrinterBaser   r9   r!   r   <module>rE      s4    3 &  % ' B ;, +7".. +7r!   