Ë
    dQêj÷  ã                   óv   — d dl mZ d dlmZmZ d dlmZ d dlmZ d dl	m
Z d dlmZ  ed«      Z G d„ d	e«      Z
y
)é    )ÚCallable)Ú	AnnotatedÚAny)ÚDoc)Ú
_operation)ÚBackgroundTasks)Ú	ParamSpecÚPc                   ó„   ‡ — 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d
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        ‰| �  |g|¢­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       €úW/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/fastapi/background.pyr   zBackgroundTasks.add_task)   s   ø€ ô* ‰wÑ Ð6 tÒ6¨vÑ6Ð6ó    c              ƒ   ó¨   K  — | j                   D ]1  }t        d|j                  ¬«      5   |«       ƒ d {  –—†  d d d «       Œ3 y 7 Œ# 1 sw Y   Œ@xY w­w)NÚbackground_task)ÚnameÚfunction)Útasksr   r   )r   Útasks     r   Ú__call__zBackgroundTasks.__call__@   sN   è ø€ Ø—J‘Jò 	ˆDÜÐ!2¸T¿Y¹YÔGñ Ù“f—�÷ð ñ	àø÷ð üs+   ‚'A©A´AµA¹AÁAÁA	ÁA)r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r
   r   r   r   r   r   r   Ú__classcell__)r   s   @r   r   r      sc   ø„ ñð87àØ�Q˜�VÑÙðóðñ	
ð7ð �v‰vð7ð —(‘(ð7ð 
õ7÷.r   r   N)Úcollections.abcr   Útypingr   r   Úannotated_docr   Úfastapi.telemetry._apir   Ústarlette.backgroundr   ÚStarletteBackgroundTasksÚtyping_extensionsr	   r
   © r   r   ú<module>r+      s-   ðÝ $ß !å Ý -Ý LÝ 'áˆcƒN€ô7Ð.õ 7r   