19 lines
575 B
Python
19 lines
575 B
Python
from __future__ import annotations
|
|
|
|
import uuid
|
|
|
|
from shared.exceptions import EntityNotFoundError
|
|
|
|
from src.domain.repositories.dataset_repository import DataSetRepository
|
|
|
|
|
|
class DeleteDataSetUseCase:
|
|
def __init__(self, repository: DataSetRepository) -> None:
|
|
self._repository = repository
|
|
|
|
async def execute(self, dataset_id: uuid.UUID) -> None:
|
|
existing = await self._repository.find_by_id(dataset_id)
|
|
if existing is None:
|
|
raise EntityNotFoundError("DataSet", str(dataset_id))
|
|
await self._repository.delete(dataset_id)
|