�
Ϫ�f� � �^ � d Z ddlmZ ddlmZmZ ddlmZmZ G d� dej � Z
y)z
An in-memory caching resolver.
� )�defer)�common�dns)�failure�logc �D � e Zd ZdZdZd
d�Zd� Zd� Zd� Zdd�Z dd�Z
d � Zy)�
CacheResolverz�
A resolver that serves records from a local, memory cache.
@ivar _reactor: A provider of L{interfaces.IReactorTime}.
Nc �� � t j j | � i | _ || _ i | _ |�ddlm} || _ |r/|j � D ] \ }\ }}| j |||� � y y )Nr )�reactor)r �ResolverBase�__init__�cache�verbose�cancel�twisted.internetr �_reactor�items�cacheResult)�selfr r r �query�seconds�payloads �5/usr/lib/python3/dist-packages/twisted/names/cache.pyr
zCacheResolver.__init__ ss � ����$�$�T�*���
��������?�0���
��-2�[�[�]�
:�)��)���� � ����9�
:� � c � � || _ | j j � }| j j � D ]< |