feat: upodate uow

This commit is contained in:
2026-05-17 15:36:53 +03:00
parent 4d3683dc01
commit f426495d47
3 changed files with 52 additions and 7 deletions

View File

@@ -15,6 +15,7 @@ class UnitOfWork(IUnitOfWork):
self._logger: ILogger = logger
async def __aenter__(self):
self._logger.debug('UnitOfWork enter')
self._user_repository = None
self._session_repository = None
self._session = self.session_factory()
@@ -22,14 +23,15 @@ class UnitOfWork(IUnitOfWork):
async def __aexit__(self, exc_type, exc_val, exc_tb):
if exc_type:
self._logger.error(str(exc_val))
self._logger.error(f'UnitOfWork rollback_on_error exc_type={exc_type.__name__} exc_val={exc_val!r}')
await self._session.rollback()
self._logger.error(f'Rollback: str{exc_val})')
self._logger.debug(f'UnitOfWork session rollback done exc_type={exc_type.__name__}')
else:
await self._session.flush()
await self._session.commit()
self._logger.debug('Commit')
self._logger.debug('UnitOfWork commit')
await self._session.close()
self._logger.debug('UnitOfWork exit session closed')
@property
def user_repository(self) -> IUserRepository: