File: //opt/alt/python27/lib/python2.7/site-packages/paste/proxy.pyo
�
a�Nc           @   s�   d  Z  d d l Z d d l Z d d l Z d d l m Z d d l m Z d Z d
 e	 f d �  �  YZ
 d d d � Z d e	 f d �  �  YZ d �  Z
 d d d � Z d S(   s�  
An application that proxies WSGI requests to a remote server.
TODO:
* Send ``Via`` header?  It's not clear to me this is a Via in the
  style of a typical proxy.
* Other headers or metadata?  I put in X-Forwarded-For, but that's it.
* Signed data of non-HTTP keys?  This would be for things like
  REMOTE_USER.
* Something to indicate what the original URL was?  The original host,
  scheme, and base path.
* Rewriting ``Location`` headers?  mod_proxy does this.
* Rewriting body?  (Probably not on this one -- that can be done with
  a different middleware that wraps this middleware)
* Example::  
    
    use = egg:Paste#proxy
    address = http://server3:8680/exist/rest/db/orgs/sch/config/
    allowed_request_methods = GET
  
i����N(   t   httpexceptions(   t   aslists   transfer-encodingt
   connections
   keep-alives   proxy-authenticates   proxy-authorizationt   tet   trailerst   upgradet   Proxyc           B   s    e  Z d d d  � Z d �  Z RS(   c         C   s�   | |  _  t j | � |  _ |  j d j �  |  _ |  j d |  _ |  j d |  _ g  | D] } | rX | j �  ^ qX |  _ g  | D] } | r� | j �  ^ q� |  _	 d  S(   Ni    i   i   (
   t   addresst   urlparset   urlsplitt   parsedt   lowert   schemet   hostt   patht   allowed_request_methodst   suppress_http_headers(   t   selfR   R   R   t   x(    (    s<