U
'7` @ s d dl Z d dlZd dlmZmZmZmZ ddlmZ ddl m
Z
dZzd dlZW n e
k
rh dZY nX dZG dd d eZG d
d deZereneZdS ) N)AnyDictListOptional )AbstractResolver)get_running_loop)ThreadedResolver
AsyncResolverDefaultResolverFc @ s^ e Zd ZdZd
eej ddddZdej fe
eeee
e
ef ddd Zdd
ddZdS )r zsUse Executor for synchronous getaddrinfo() calls, which defaults to
concurrent.futures.ThreadPoolExecutor.
N)loopreturnc C s t || _d S N)r _loop)selfr r C/opt/alt/python38/lib64/python3.8/site-packages/aiohttp/resolver.py__init__ s zThreadedResolver.__init__r )hostnameportfamilyr
c
s | j j||tj|tjdI d H }g }|D ]r\}}}}}|tjkrj|d rjt|tjtjB \} }
t |
}n|d d \} }|
|| |||tjtjB d q(|S )N)typer flags r hostr r protor )
r getaddrinfosocketSOCK_STREAM
AI_ADDRCONFIGAF_INET6getnameinfoNI_NUMERICHOSTNI_NUMERICSERVintappendAI_NUMERICHOSTAI_NUMERICSERV)r r r r Zinfoshosts_r addressr Z_portr r r resolve s4
zThreadedResolver.resolver
c s d S r r r r r r close@ s zThreadedResolver.close)N)__name__
__module____qualname____doc__r asyncioAbstractEventLoopr r AF_INETstrr&