Skip to content

Commit 72e3399

Browse files
authored
Remove kwargs client. (#2243)
1 parent 552c56e commit 72e3399

17 files changed

+125
-272
lines changed

pymodbus/client/base.py

+13-7
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
from pymodbus.logging import Log
1717
from pymodbus.pdu import ModbusRequest, ModbusResponse
1818
from pymodbus.transaction import SyncModbusTransactionManager
19-
from pymodbus.transport import CommParams
19+
from pymodbus.transport import CommParams, CommType
2020
from pymodbus.utilities import ModbusTransactionState
2121

2222

@@ -37,6 +37,7 @@ class ModbusBaseClient(ModbusClientMixin[Awaitable[ModbusResponse]]):
3737
:param reconnect_delay_max: Maximum delay in seconds.milliseconds before reconnecting.
3838
:param on_connect_callback: Will be called when connected/disconnected (bool parameter)
3939
:param no_resend_on_retry: Do not resend request when retrying due to missing response.
40+
:param comm_type: Type of communication (set by interface class)
4041
:param kwargs: Experimental parameters.
4142
4243
.. tip::
@@ -49,7 +50,7 @@ class ModbusBaseClient(ModbusClientMixin[Awaitable[ModbusResponse]]):
4950
**Application methods, common to all clients**:
5051
"""
5152

52-
def __init__(
53+
def __init__( # pylint: disable=too-many-arguments
5354
self,
5455
framer: FramerType,
5556
timeout: float = 3,
@@ -59,16 +60,18 @@ def __init__(
5960
reconnect_delay_max: float = 300,
6061
on_connect_callback: Callable[[bool], None] | None = None,
6162
no_resend_on_retry: bool = False,
63+
comm_type: CommType | None = None,
64+
source_address: tuple[str, int] | None = None,
6265
**kwargs: Any,
6366
) -> None:
6467
"""Initialize a client instance."""
6568
ModbusClientMixin.__init__(self) # type: ignore[arg-type]
6669
self.ctx = ModbusClientProtocol(
6770
framer,
6871
CommParams(
69-
comm_type=kwargs.get("CommType"),
72+
comm_type=comm_type,
7073
comm_name="comm",
71-
source_address=kwargs.get("source_address", None),
74+
source_address=source_address,
7275
reconnect_delay=reconnect_delay,
7376
reconnect_delay_max=reconnect_delay_max,
7477
timeout_connect=timeout,
@@ -238,6 +241,7 @@ class ModbusBaseSyncClient(ModbusClientMixin[ModbusResponse]):
238241
:param reconnect_delay: Minimum delay in seconds.milliseconds before reconnecting.
239242
:param reconnect_delay_max: Maximum delay in seconds.milliseconds before reconnecting.
240243
:param no_resend_on_retry: Do not resend request when retrying due to missing response.
244+
:param source_address: source address of client
241245
:param kwargs: Experimental parameters.
242246
243247
.. tip::
@@ -260,7 +264,7 @@ class _params:
260264
reconnect_delay: int | None = None
261265
source_address: tuple[str, int] | None = None
262266

263-
def __init__(
267+
def __init__( # pylint: disable=too-many-arguments
264268
self,
265269
framer: FramerType,
266270
timeout: float = 3,
@@ -270,14 +274,16 @@ def __init__(
270274
reconnect_delay: float = 0.1,
271275
reconnect_delay_max: float = 300.0,
272276
no_resend_on_retry: bool = False,
277+
comm_type: CommType | None = None,
278+
source_address: tuple[str, int] | None = None,
273279
**kwargs: Any,
274280
) -> None:
275281
"""Initialize a client instance."""
276282
ModbusClientMixin.__init__(self) # type: ignore[arg-type]
277283
self.comm_params = CommParams(
278-
comm_type=kwargs.get("CommType"),
284+
comm_type=comm_type,
279285
comm_name="comm",
280-
source_address=kwargs.get("source_address", None),
286+
source_address=source_address,
281287
reconnect_delay=reconnect_delay,
282288
reconnect_delay_max=reconnect_delay_max,
283289
timeout_connect=timeout,

0 commit comments

Comments
 (0)