Current File : //lib/python3.9/site-packages/pip/_vendor/urllib3/util/__pycache__/response.cpython-39.pyc |
a
[��f�
� @ sP d dl mZ d dlmZmZ ddlmZ ddlmZ dd� Z
dd � Zd
d� ZdS )
� )�absolute_import)�!MultipartInvariantViolationDefect�StartBoundaryNotFoundDefect� )�HeaderParsingError)�http_clientc C sf z
| � � W S ty Y n0 z| jW S ty8 Y n0 z| jdu W S tyX Y n0 td��dS )zt
Checks whether a given file-like object is closed.
:param obj:
The file-like object to check.
Nz)Unable to determine whether fp is closed.)Zisclosed�AttributeError�closed�fp�
ValueError)�obj� r
�E/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/util/response.py�is_fp_closed s
r c C s� t | tj�std�t| ����t| dd�}t| dd�}d}|r^| �� s^|� }t |tt f�r^|}|rpdd� |D �}|sx|r�t
||d��dS )a>
Asserts whether all headers have been successfully parsed.
Extracts encountered errors from the result of parsing headers.
Only works on Python 3.
:param http.client.HTTPMessage headers: Headers to verify.
:raises urllib3.exceptions.HeaderParsingError:
If parsing errors are found.
z"expected httplib.Message, got {0}.�defectsN�get_payloadc S s g | ]}t |ttf�s|�qS r
)�
isinstancer r )�.0Zdefectr
r
r �
<listcomp>R s
��z)assert_header_parsing.<locals>.<listcomp>)r �
unparsed_data)r �httplibZHTTPMessage� TypeError�format�type�getattrZis_multipart�bytes�strr )Zheadersr r r Zpayloadr
r
r �assert_header_parsing( s �r c C s$ | j }t|t�r|dkS |�� dkS )z�
Checks whether the request of a response has been a HEAD-request.
Handles the quirks of AppEngine.
:param http.client.HTTPResponse response:
Response to check if the originating request
used 'HEAD' as a method.
� ZHEAD)�_methodr �int�upper)Zresponse�methodr
r
r �is_response_to_head^ s
r# N)
Z
__future__r Zemail.errorsr r �
exceptionsr Zpackages.six.movesr r r r r# r
r
r
r �<module> s 6