removed many unneeded async definitions. The main controller remains async

This commit is contained in:
Lucas Jensen
2024-05-03 13:21:47 -07:00
parent 032feebe23
commit 5bb28ed923
15 changed files with 144 additions and 147 deletions

View File

@@ -19,6 +19,8 @@ class MainController:
All methods are either pass-throughs to the appropriate controller or
are used to coordinate multiple controllers.
All methods are asynchronous to facilitate asynchronous calls from the Router layer.
token-based authentication is handled here as needed per the nature of the data being accessed.
"""
@@ -29,10 +31,10 @@ class MainController:
self.group_controller = GroupController()
async def get_musicians(self) -> list[Musician]:
return await self.musician_controller.get_musicians()
return self.musician_controller.get_musicians()
async def get_musician(self, id: int) -> Musician:
return await self.musician_controller.get_musician(id)
return self.musician_controller.get_musician(id)
async def update_musician(
self,
@@ -48,60 +50,60 @@ class MainController:
detail="ID in URL does not match ID in request body",
)
_, sub = oauth_token.email_and_sub(token)
await self.user_controller.get_user_by_sub(sub)
return await self.musician_controller.update_musician(
self.user_controller.get_user_by_sub(sub)
return self.musician_controller.update_musician(
musician_id=musician.id,
new_bio=musician.bio,
file=file,
)
async def get_events(self) -> list[EventSeries]:
return await self.event_controller.get_all_series()
return self.event_controller.get_all_series()
async def get_event(self, id: int) -> EventSeries:
return await self.event_controller.get_one_series_by_id(id)
return self.event_controller.get_one_series_by_id(id)
async def create_event(
self, series: NewEventSeries, token: HTTPAuthorizationCredentials
) -> EventSeries:
_, sub = oauth_token.email_and_sub(token)
await self.user_controller.get_user_by_sub(sub)
return await self.event_controller.create_series(series)
self.user_controller.get_user_by_sub(sub)
return self.event_controller.create_series(series)
async def add_series_poster(
self, series_id: int, poster: UploadFile, token: HTTPAuthorizationCredentials
) -> EventSeries:
_, sub = oauth_token.email_and_sub(token)
await self.user_controller.get_user_by_sub(sub)
return await self.event_controller.add_series_poster(series_id, poster)
self.user_controller.get_user_by_sub(sub)
return self.event_controller.add_series_poster(series_id, poster)
async def delete_series(self, id: int, token: HTTPAuthorizationCredentials) -> None:
_, sub = oauth_token.email_and_sub(token)
await self.user_controller.get_user_by_sub(sub)
await self.event_controller.delete_series(id)
self.user_controller.get_user_by_sub(sub)
self.event_controller.delete_series(id)
async def update_series(
self, route_id: int, series: EventSeries, token: HTTPAuthorizationCredentials
) -> EventSeries:
_, sub = oauth_token.email_and_sub(token)
await self.user_controller.get_user_by_sub(sub)
return await self.event_controller.update_series(route_id, series)
self.user_controller.get_user_by_sub(sub)
return self.event_controller.update_series(route_id, series)
async def get_users(self) -> list[User]:
return await self.user_controller.get_users()
return self.user_controller.get_users()
async def get_user(self, id: int) -> User:
return await self.user_controller.get_user_by_id(id)
return self.user_controller.get_user_by_id(id)
async def create_user(self, token: HTTPAuthorizationCredentials) -> User:
return await self.user_controller.create_user(token)
return self.user_controller.create_user(token)
async def get_group(self) -> Group:
return await self.group_controller.get_group()
return self.group_controller.get_group()
async def update_group_bio(
self, bio: str, token: HTTPAuthorizationCredentials
) -> Group:
_, sub = oauth_token.email_and_sub(token)
await self.user_controller.get_user_by_sub(sub)
return await self.group_controller.update_group_bio(bio)
self.user_controller.get_user_by_sub(sub)
return self.group_controller.update_group_bio(bio)