
    9Cg                     h    d dl mZmZ d dlmZ d dlmZmZm	Z	  e	d          Z
 G d de          ZdS )    )AnyCallable)BackgroundTasks)	AnnotatedDoc	ParamSpecPc                   z     e Zd ZdZdeeeef          ed          f         dej	        dej
        ddf fdZ xZS )	r   aG  
    A collection of background tasks that will be called after a response has been
    sent to the client.

    Read more about it in the
    [FastAPI docs for Background Tasks](https://fastapi.tiangolo.com/tutorial/background-tasks/).

    ## Example

    ```python
    from fastapi import BackgroundTasks, FastAPI

    app = FastAPI()


    def write_notification(email: str, message=""):
        with open("log.txt", mode="w") as email_file:
            content = f"notification for {email}: {message}"
            email_file.write(content)


    @app.post("/send-notification/{email}")
    async def send_notification(email: str, background_tasks: BackgroundTasks):
        background_tasks.add_task(write_notification, email, message="some notification")
        return {"message": "Notification sent in the background"}
    ```
    funcz
                The function to call after the response is sent.

                It can be a regular `def` function or an `async def` function.
                argskwargsreturnNc                 >     t                      j        |g|R i |S )z
        Add a function to be called in the background after the response is sent.

        Read more about it in the
        [FastAPI docs for Background Tasks](https://fastapi.tiangolo.com/tutorial/background-tasks/).
        )superadd_task)selfr   r   r   	__class__s       D/var/www/api/venv/lib/python3.11/site-packages/fastapi/background.pyr   zBackgroundTasks.add_task&   s,    *  uww6t666v666    )__name__
__module____qualname____doc__r   r   r	   r   r   r   r   r   __classcell__)r   s   @r   r   r   	   s         87QVC 	
7 v7 (7 
7 7 7 7 7 7 7 7 7 7r   r   N)typingr   r   starlette.backgroundr   StarletteBackgroundTaskstyping_extensionsr   r   r   r	    r   r   <module>r       s                    L L L L L L 7 7 7 7 7 7 7 7 7 7IcNN27 27 27 27 27. 27 27 27 27 27r   