File: //opt/alt/python27/lib/python2.7/site-packages/paste/fileapp.pyo
�
a�Nc           @   s�   d  Z  d d l Z d d l Z d d l Z d d l Z d d l Z d d l Td d l Td Z d Z	 d d d d	 g Z
 d e f d
 �  �  YZ d e f d �  �  YZ
 d e f d
 �  �  YZ d e f d �  �  YZ d	 e f d �  �  YZ d S(   s�   
This module handles sending static content such as in-memory data or
files.  At this time it has cache helpers and understands the
if-modified-since request header.
i����N(   t   *i   i   t   DataAppt   FileAppt   DirectoryAppt   ArchiveStorec           B   s\   e  Z d  Z d
 Z d d d � Z d �  Z d d � Z d �  Z d �  Z	 d �  Z
 d	 �  Z RS(   s�  
    Returns an application that will send content in a single chunk,
    this application has support for setting cache-control and for
    responding to conditional (or HEAD) requests.
    Constructor Arguments:
        ``content``     the content being sent to the client
        ``headers``     the headers to send /w the response
        The remaining ``kwargs`` correspond to headers, where the
        underscore is replaced with a dash.  These values are only
        added to the headers if they are not already provided; thus,
        they can be used for default values.  Examples include, but
        are not limited to:
            ``content_type``
            ``content_encoding``
            ``content_location``
    ``cache_control()``
        This method provides validated construction of the ``Cache-Control``
        header as well as providing for automated filling out of the
        ``EXPIRES`` header for HTTP/1.0 clients.
    ``set_content()``
        This method provides a mechanism to set the content after the
        application has been constructed.  This method does things
        like changing ``Last-Modified`` and ``Content-Length`` headers.
    t   GETt   HEADc         K   s�   d  |  _ d  |  _ d  |  _ d |  _ | d  k	 r<