Skip to content

Commit 22b1b76

Browse files
committed
Handle response-less requests, clean up
1 parent f646c56 commit 22b1b76

File tree

3 files changed

+71
-94
lines changed

3 files changed

+71
-94
lines changed

plugwise_usb/connection/__init__.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,7 @@ async def get_node_details(
214214
self.send, bytes(mac, UTF8), retries=1
215215
)
216216
try:
217-
ping_response = await ping_request.send(suppress_node_errors=True)
217+
ping_response = await ping_request.send()
218218
except StickError:
219219
return (None, None)
220220
if ping_response is None:
@@ -230,13 +230,16 @@ async def get_node_details(
230230
return (info_response, ping_response)
231231

232232
async def send(
233-
self, request: PlugwiseRequest, suppress_node_errors: bool = True
233+
self,
234+
request: PlugwiseRequest,
235+
suppress_node_errors=True,
236+
no_response_expected=False,
234237
) -> PlugwiseResponse | None:
235238
"""Submit request to queue and return response."""
236239
if not suppress_node_errors:
237-
return await self._queue.submit(request)
240+
return await self._queue.submit(request, no_response_expected)
238241
try:
239-
return await self._queue.submit(request)
242+
return await self._queue.submit(request, no_response_expected)
240243
except (NodeError, StickError):
241244
return None
242245

plugwise_usb/connection/queue.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,9 @@ async def stop(self) -> None:
7474
self._stick = None
7575
_LOGGER.debug("queue stopped")
7676

77-
async def submit(self, request: PlugwiseRequest) -> PlugwiseResponse | None:
77+
async def submit(
78+
self, request: PlugwiseRequest, no_response_expected: bool
79+
) -> PlugwiseResponse | None:
7880
"""Add request to queue and return the response of node. Raises an error when something fails."""
7981
if request.waiting_for_response:
8082
raise MessageError(
@@ -90,6 +92,8 @@ async def submit(self, request: PlugwiseRequest) -> PlugwiseResponse | None:
9092
)
9193
await self._add_request_to_queue(request)
9294
try:
95+
if no_response_expected:
96+
return None
9397
response: PlugwiseResponse = await request.response_future()
9498
return response
9599
except (NodeTimeout, StickTimeout) as e:

0 commit comments

Comments
 (0)