Feat: add add_tribe in service
This commit is contained in:
16
backend/service/services.py
Normal file
16
backend/service/services.py
Normal file
@@ -0,0 +1,16 @@
|
||||
from backend.model.tribe import Tribe
|
||||
from backend.repository.abstract_repository import AbstractRepository
|
||||
from backend.repository.tribe_sqlite_repository import TribeRepositoryError
|
||||
|
||||
|
||||
class TribeExists(Exception):
|
||||
pass
|
||||
|
||||
|
||||
def add_tribe(tribe: Tribe, tribe_repo: AbstractRepository, conn):
|
||||
try:
|
||||
tribe_repo.add(tribe)
|
||||
except TribeRepositoryError:
|
||||
raise TribeExists(f"The tribe {tribe.name} already exists")
|
||||
conn.commit()
|
||||
return tribe
|
Reference in New Issue
Block a user