Improve exception handling for Comelit (#102762)

improve exception handling for Comelit
This commit is contained in:
Simone Chemelli 2023-10-25 10:28:22 +02:00 committed by GitHub
parent 37cde54b2b
commit ffed1e8274
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,11 +1,9 @@
"""Support for Comelit.""" """Support for Comelit."""
import asyncio
from datetime import timedelta from datetime import timedelta
from typing import Any from typing import Any
from aiocomelit import ComeliteSerialBridgeApi, ComelitSerialBridgeObject from aiocomelit import ComeliteSerialBridgeApi, ComelitSerialBridgeObject, exceptions
from aiocomelit.const import BRIDGE from aiocomelit.const import BRIDGE
import aiohttp
from homeassistant.config_entries import ConfigEntry from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
@ -73,8 +71,9 @@ class ComelitSerialBridge(DataUpdateCoordinator):
logged = False logged = False
try: try:
logged = await self.api.login() logged = await self.api.login()
except (asyncio.exceptions.TimeoutError, aiohttp.ClientConnectorError) as err: except exceptions.CannotConnect as err:
_LOGGER.warning("Connection error for %s", self._host) _LOGGER.warning("Connection error for %s", self._host)
await self.api.close()
raise UpdateFailed(f"Error fetching data: {repr(err)}") from err raise UpdateFailed(f"Error fetching data: {repr(err)}") from err
finally: finally:
if not logged: if not logged: