feat: Add audio extraction endpoints and refactor sound API routes
This commit is contained in:
@@ -2,9 +2,10 @@
|
||||
|
||||
from fastapi import APIRouter
|
||||
|
||||
from app.api.v1.admin import sounds
|
||||
from app.api.v1.admin import extractions, sounds
|
||||
|
||||
router = APIRouter(prefix="/admin")
|
||||
|
||||
# Include all admin sub-routers
|
||||
router.include_router(extractions.router)
|
||||
router.include_router(sounds.router)
|
||||
|
||||
19
app/api/v1/admin/extractions.py
Normal file
19
app/api/v1/admin/extractions.py
Normal file
@@ -0,0 +1,19 @@
|
||||
"""Admin audio extraction API endpoints."""
|
||||
|
||||
from typing import Annotated
|
||||
|
||||
from fastapi import APIRouter, Depends
|
||||
|
||||
from app.core.dependencies import get_admin_user
|
||||
from app.models.user import User
|
||||
from app.services.extraction_processor import extraction_processor
|
||||
|
||||
router = APIRouter(prefix="/extractions", tags=["admin-extractions"])
|
||||
|
||||
|
||||
@router.get("/status")
|
||||
async def get_extraction_processor_status(
|
||||
current_user: Annotated[User, Depends(get_admin_user)], # noqa: ARG001
|
||||
) -> dict:
|
||||
"""Get the status of the extraction processor. Admin only."""
|
||||
return extraction_processor.get_status()
|
||||
@@ -8,7 +8,6 @@ from sqlmodel.ext.asyncio.session import AsyncSession
|
||||
from app.core.database import get_db
|
||||
from app.core.dependencies import get_admin_user
|
||||
from app.models.user import User
|
||||
from app.services.extraction_processor import extraction_processor
|
||||
from app.services.sound_normalizer import NormalizationResults, SoundNormalizerService
|
||||
from app.services.sound_scanner import ScanResults, SoundScannerService
|
||||
|
||||
@@ -229,10 +228,3 @@ async def normalize_sound_by_id(
|
||||
) from e
|
||||
|
||||
|
||||
# EXTRACTION PROCESSOR STATUS
|
||||
@router.get("/extract/status")
|
||||
async def get_extraction_processor_status(
|
||||
current_user: Annotated[User, Depends(get_admin_user)], # noqa: ARG001
|
||||
) -> dict:
|
||||
"""Get the status of the extraction processor. Admin only."""
|
||||
return extraction_processor.get_status()
|
||||
|
||||
Reference in New Issue
Block a user