Files
2026-03-14 10:34:31 +01:00

23 lines
795 B
Python

from __future__ import annotations
from fastapi import APIRouter, Depends
from backend.app.api.schemas import CopyRequest, TaskCreateResponse
from backend.app.dependencies import get_copy_task_service
from backend.app.services.copy_task_service import CopyTaskService
router = APIRouter(prefix="/files")
@router.post("/copy", response_model=TaskCreateResponse, status_code=202)
async def copy_file(
request: CopyRequest,
service: CopyTaskService = Depends(get_copy_task_service),
) -> TaskCreateResponse:
if request.sources is not None:
return service.create_batch_copy_task(
sources=request.sources,
destination_base=request.destination_base,
)
return service.create_copy_task(source=request.source, destination=request.destination)