Files
Brian Bjarke Jensen 0ba860b892
Code Quality Pipeline / code-quality (pull_request) Failing after 1m19s
Test Python Package / test (pull_request) Failing after 50s
added infrastructure code
2025-09-18 12:13:39 +02:00

31 lines
767 B
Python

"""Definition of JobRepositoryInterface."""
from uuid import UUID
from abc import ABC, abstractmethod
from data_store.dto import Job
class JobRepositoryInterface(ABC):
"""JobRepository interface."""
@abstractmethod
def get(self, job_id: UUID) -> Job | None:
"""Retrieve a Job by its ID."""
raise NotImplementedError()
@abstractmethod
def put(self, job: Job) -> None:
"""Update or create a Job."""
raise NotImplementedError()
@abstractmethod
def delete(self, job_id: UUID) -> None:
"""Delete a Job by its ID."""
raise NotImplementedError()
@abstractmethod
def list_all(self) -> list[UUID]:
"""List all Job IDs in the repository."""
raise NotImplementedError()