B
    `v
                 @   sD   d dl mZmZmZ eZd dlmZ d dlm	Z	 G dd de	Z
dS )    )absolute_importdivisionprint_function)get_file_content)BaseFactCollectorc               @   s    e Zd ZdZe ZdddZdS )DnsFactCollectordnsNc             C   s  i }i |d< xt dd D ]}|ds|ds| dkrFq| }t|dkr\q|d dkrd|d krg |d d< x&|d	d  D ]}|d d | qW q|d d
krt|d	kr|d	 |d d
< q|d dkrg |d d< x|d	d  D ]}|d d |  qW q|d dkr`g |d d< x|d	d  D ]}|d d | qBW q|d dkri |d d< t|d	krxd|d	d  D ]T}	|	dd	}
t|
dkrqt|
dkr|
d	 pd}||d d |
d < qW qW |S )Nr   z/etc/resolv.conf #;r   
nameserverZnameservers   domainsearchZsortlistoptions:   T)r   
splitlines
startswithstripsplitlenappend)selfmoduleZcollected_factsZ	dns_factslinetokensr   suffixaddressoptionZoption_tokensval r!   T/home/dcms/DCMS/lib/python3.7/site-packages/ansible/module_utils/facts/system/dns.pycollect   sD     zDnsFactCollector.collect)NN)__name__
__module____qualname__namesetZ	_fact_idsr#   r!   r!   r!   r"   r      s   r   N)
__future__r   r   r   type__metaclass__Z ansible.module_utils.facts.utilsr   Z$ansible.module_utils.facts.collectorr   r   r!   r!   r!   r"   <module>   s   