HEX
Server: nginx/1.30.4
System: Linux d-twindigital-web-1.host-ed.eu 4.18.0-553.141.2.el8_10.x86_64 #1 SMP Wed Jul 8 10:28:18 EDT 2026 x86_64
User: u_twindigital_html (1009)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: //lib/python3.6/site-packages/ndg/httpsclient/__pycache__/urllib2_build_opener.cpython-36.pyc
3

�<�Y�
�@s�dZdZdZdZdZdZdZddlZddlZej	dd	krle
Zdd
lm
Z
mZmZmZmZmZmZmZmZn:ddlZejZdd
lm
Z
mZmZmZmZmZmZmZmZddlmZeje�Zdd
�ZdS)zTurllib2 style build opener integrates with HTTPSConnection class from this
package.
zP J Kershawz21/12/10z2(C) 2011 Science and Technology Facilities Councilz-BSD - see LICENSE file in top-level directoryzPhilip.Kershaw@stfc.ac.ukz$Id$�N�)	�ProxyHandler�UnknownHandler�HTTPDefaultErrorHandler�
FTPHandler�FileHandler�HTTPErrorProcessor�HTTPHandler�OpenerDirector�HTTPRedirectHandler)�HTTPSContextHandlercOs�dd�}t�}ttttttttg}t	|�}|j
t�g}xL|D]D}x>|D]6}||�rjt||�r~|j
|�qHt
||�rH|j
|�qHWq>Wx |D]}||kr�|j|��q�W|jd�}	t|kr�|jt|	��x$|D]}
||
�r�|
�}
|j|
�q�W|S)aCreate an opener object from a list of handlers.

    The opener will use several default handlers, including support
    for HTTP and FTP.

    If any of the handlers passed as arguments are subclasses of the
    default handlers, the default handlers will not be used.
    cSst|t�pt|d�S)N�	__bases__)�
isinstance�class_type_�hasattr)�obj�r�*/usr/lib/python3.6/urllib2_build_opener.py�isclass,szbuild_opener.<locals>.isclass�ssl_context)r
rrr	rrrrr�list�appendr�
issubclassrZadd_handler�get)Zhandlers�kwr�openerZdefault_classesZ
check_classes�skip�klassZcheckr�hrrr�build_opener#s4	








r)�__doc__�
__author__Z__date__Z
__copyright__Z__license__Z__contact__Z__revision__Zlogging�sys�version_info�typerZurllib.requestrrrrrrr	r
r�typesZ	ClassTypeZurllib2Zndg.httpsclient.httpsrZ	getLogger�__name__�logrrrrr�<module>s".,