�
�f�
� �0 � d dl mZ d dlmZ G d� d� Zy)� )�StringIO)�chop_commentc �6 � e Zd Zd� Zd� Zd� Zd� Zd� Zd� Zd� Z y) � HostsConfc � � || _ d | _ y �N)�_text� _contents)�self�texts �A/usr/lib/python3/dist-packages/cloudinit/distros/parsers/hosts.py�__init__zHostsConf.__init__ s � ���
���� c �^ � | j �!| j | j � | _ y y r )r
�_parser )r s r
�parsezHostsConf.parse s% � ��>�>�!�!�[�[����4�D�N� "r c � � | j � g }| j D ]9 \ }}|dk( s�|\ }}t |� s�|d |k( s�&|j |dd � �; |S )N�optionr � )r r
�len�append)r �ip�options� line_type�
components�pieces�_tails r
� get_entryzHostsConf.get_entry sc � ��
�
����'+�~�~� /�#�Y�
��H�$�",�����v�;�6�!�9��?��N�N�6�!�"�:�.� /�
�r c � � | j � g }| j D ]_ \ }}|dk7 r|j ||f� �|\ }}t |� r |d |k( r�8t |� s�D|j |t |� f� �a || _ y )Nr r )r r
r r �list)r r � n_entriesr r r r s r
�del_entrieszHostsConf.del_entries" |