File: //usr/local/lib/python3.7/site-packages/requests/__pycache__/cookies.cpython-37.pyc
B
���g�H � @ s� d Z ddlZddlZddlZddlmZ ddlmZmZm Z m
Z
mZ yddlZW n e
k
rl ddlZY nX G dd� d�ZG dd � d �Zd
d� Zdd
� Zddd�ZG dd� de�ZG dd� de je�Zdd� Zdd� Zdd� Zd dd�Zdd� ZdS )!z�
requests.cookies
~~~~~~~~~~~~~~~~
Compatibility code to be able to use `cookielib.CookieJar` with requests.
requests.utils imports from here, so be careful with imports.
� N� )�to_native_string)�Morsel�MutableMapping� cookielib�urlparse�
urlunparsec @ s� e Zd ZdZdd� Zdd� Zdd� Zdd � Zd
d� Zdd
� Z dd� Z
ddd�Zdd� Zdd� Z
dd� Zedd� �Zedd� �Zedd� �ZdS ) �MockRequesta� Wraps a `requests.Request` to mimic a `urllib2.Request`.
The code in `cookielib.CookieJar` expects this interface in order to correctly
manage cookie policies, i.e., determine whether a cookie can be set, given the
domains of the request and the cookie.
The original request object is read-only. The client is responsible for collecting
the new headers via `get_new_headers()` and interpreting them appropriately. You
probably want `get_cookie_header`, defined below.
c C s || _ i | _t| j j�j| _d S )N)�_r�_new_headersr �url�scheme�type)�self�request� r �:/usr/local/lib/python3.7/site-packages/requests/cookies.py�__init__# s zMockRequest.__init__c C s | j S )N)r )r r r r �get_type( s zMockRequest.get_typec C s t | jj�jS )N)r r
r �netloc)r r r r �get_host+ s zMockRequest.get_hostc C s | � � S )N)r )r r r r �get_origin_req_host. s zMockRequest.get_origin_req_hostc C sT | j j�d�s| j jS t| j jd dd�}t| j j�}t|j||j|j |j
|jg�S )N�Hostzutf-8)�encoding)r
�headers�getr r r r r
�path�params�query�fragment)r �host�parsedr r r �get_full_url1 s zMockRequest.get_full_urlc C s dS )NTr )r r r r �is_unverifiableE s zMockRequest.is_unverifiablec C s || j jkp|| jkS )N)r
r r )r �namer r r �
has_headerH s zMockRequest.has_headerNc C s | j j�|| j�||��S )N)r
r r r )r r$ �defaultr r r �
get_headerK s zMockRequest.get_headerc C s t d��dS )zMcookielib has no legitimate use for this method; add it back if you find one.z=Cookie headers should be added with add_unredirected_header()N)�NotImplementedError)r �key�valr r r �
add_headerN s zMockRequest.add_headerc C s || j |<