Skip to content

Commit 0e2c7e9

Browse files
authored
Remove kwargs. (#2236)
1 parent 97250ae commit 0e2c7e9

File tree

15 files changed

+94
-77
lines changed

15 files changed

+94
-77
lines changed

examples/contrib/redis_datastore.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,16 @@
1717
class RedisSlaveContext(ModbusBaseSlaveContext):
1818
"""This is a modbus slave context using redis as a backing store."""
1919

20-
def __init__(self, **kwargs):
20+
def __init__(self, host="localhost", port=6379, prefix="pymodbus", client=None):
2121
"""Initialize the datastores.
2222
2323
:param host: The host to connect to
2424
:param port: The port to connect to
2525
:param prefix: A prefix for the keys
26+
:param client: redis client
2627
"""
27-
host = kwargs.get("host", "localhost")
28-
port = kwargs.get("port", 6379)
29-
self.prefix = kwargs.get("prefix", "pymodbus")
30-
self.client = kwargs.get("client", redis.Redis(host=host, port=port))
28+
self.prefix = prefix
29+
self.client = client if client else redis.Redis(host=host, port=port)
3130
self._build_mapping()
3231

3332
def __str__(self):

examples/contrib/sql_datastore.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,18 @@
2020
class SqlSlaveContext(ModbusBaseSlaveContext):
2121
"""This creates a modbus data model with each data access in its a block."""
2222

23-
def __init__(self, *_args, **kwargs):
23+
def __init__(self, *_args, table="pymodbus", database=None):
2424
"""Initialize the datastores.
2525
26-
:param kwargs: Each element is a ModbusDataBlock
26+
:param table: table name
27+
:param database: database
2728
"""
2829
self._engine = None
2930
self._metadata = None
3031
self._table = None
3132
self._connection = None
32-
self.table = kwargs.get("table", "pymodbus")
33-
self.database = kwargs.get("database", "sqlite:///:memory:")
33+
self.table = table
34+
self.database = database if database else "sqlite:///:memory:"
3435
self._db_create(self.table, self.database)
3536

3637
def __str__(self):

pymodbus/datastore/context.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -92,14 +92,19 @@ class ModbusSlaveContext(ModbusBaseSlaveContext):
9292
9393
"""
9494

95-
def __init__(self, *_args, **kwargs):
95+
def __init__(self, *_args,
96+
di=ModbusSequentialDataBlock.create(),
97+
co=ModbusSequentialDataBlock.create(),
98+
ir=ModbusSequentialDataBlock.create(),
99+
hr=ModbusSequentialDataBlock.create(),
100+
zero_mode=False):
96101
"""Initialize the datastores."""
97102
self.store = {}
98-
self.store["d"] = kwargs.get("di", ModbusSequentialDataBlock.create())
99-
self.store["c"] = kwargs.get("co", ModbusSequentialDataBlock.create())
100-
self.store["i"] = kwargs.get("ir", ModbusSequentialDataBlock.create())
101-
self.store["h"] = kwargs.get("hr", ModbusSequentialDataBlock.create())
102-
self.zero_mode = kwargs.get("zero_mode", False)
103+
self.store["d"] = di
104+
self.store["c"] = co
105+
self.store["i"] = ir
106+
self.store["h"] = hr
107+
self.zero_mode = zero_mode
103108

104109
def __str__(self):
105110
"""Return a string representation of the context.

pymodbus/datastore/remote.py

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -69,47 +69,47 @@ def __str__(self):
6969

7070
def __build_mapping(self):
7171
"""Build the function code mapper."""
72-
kwargs = {}
72+
params = {}
7373
if self.slave:
74-
kwargs["slave"] = self.slave
74+
params["slave"] = self.slave
7575
self.__get_callbacks = {
7676
"d": lambda a, c: self._client.read_discrete_inputs(
77-
a, c, **kwargs
77+
a, c, **params
7878
),
7979
"c": lambda a, c: self._client.read_coils(
80-
a, c, **kwargs
80+
a, c, **params
8181
),
8282
"h": lambda a, c: self._client.read_holding_registers(
83-
a, c, **kwargs
83+
a, c, **params
8484
),
8585
"i": lambda a, c: self._client.read_input_registers(
86-
a, c, **kwargs
86+
a, c, **params
8787
),
8888
}
8989
self.__set_callbacks = {
9090
"d5": lambda a, v: self._client.write_coil(
91-
a, v, **kwargs
91+
a, v, **params
9292
),
9393
"d15": lambda a, v: self._client.write_coils(
94-
a, v, **kwargs
94+
a, v, **params
9595
),
9696
"c5": lambda a, v: self._client.write_coil(
97-
a, v, **kwargs
97+
a, v, **params
9898
),
9999
"c15": lambda a, v: self._client.write_coils(
100-
a, v, **kwargs
100+
a, v, **params
101101
),
102102
"h6": lambda a, v: self._client.write_register(
103-
a, v, **kwargs
103+
a, v, **params
104104
),
105105
"h16": lambda a, v: self._client.write_registers(
106-
a, v, **kwargs
106+
a, v, **params
107107
),
108108
"i6": lambda a, v: self._client.write_register(
109-
a, v, **kwargs
109+
a, v, **params
110110
),
111111
"i16": lambda a, v: self._client.write_registers(
112-
a, v, **kwargs
112+
a, v, **params
113113
),
114114
}
115115
self._write_fc = (0x05, 0x06, 0x0F, 0x10)

pymodbus/device.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -470,7 +470,7 @@ def __iter__(self):
470470
"""
471471
return self.__counters.__iter__()
472472

473-
def __new__(cls, *_args, **_kwargs):
473+
def __new__(cls):
474474
"""Create a new instance."""
475475
if "_inst" not in vars(cls):
476476
cls._inst = object.__new__(cls)

pymodbus/events.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,11 @@ class RemoteReceiveEvent(ModbusEvent):
4848
7 1
4949
"""
5050

51-
def __init__(self, **kwargs):
51+
def __init__(self, overrun=False, listen=False, broadcast=False):
5252
"""Initialize a new event instance."""
53-
self.overrun = kwargs.get("overrun", False)
54-
self.listen = kwargs.get("listen", False)
55-
self.broadcast = kwargs.get("broadcast", False)
53+
self.overrun = overrun
54+
self.listen = listen
55+
self.broadcast = broadcast
5656

5757
def encode(self) -> bytes:
5858
"""Encode the status bits to an event message.
@@ -98,14 +98,14 @@ class RemoteSendEvent(ModbusEvent):
9898
7 0
9999
"""
100100

101-
def __init__(self, **kwargs):
101+
def __init__(self, read=False, slave_abort=False, slave_busy=False, slave_nak=False, write_timeout=False, listen=False):
102102
"""Initialize a new event instance."""
103-
self.read = kwargs.get("read", False)
104-
self.slave_abort = kwargs.get("slave_abort", False)
105-
self.slave_busy = kwargs.get("slave_busy", False)
106-
self.slave_nak = kwargs.get("slave_nak", False)
107-
self.write_timeout = kwargs.get("write_timeout", False)
108-
self.listen = kwargs.get("listen", False)
103+
self.read = read
104+
self.slave_abort = slave_abort
105+
self.slave_busy = slave_busy
106+
self.slave_nak = slave_nak
107+
self.write_timeout = write_timeout
108+
self.listen = listen
109109

110110
def encode(self):
111111
"""Encode the status bits to an event message.

pymodbus/framer/old_framer_ascii.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,10 @@ def decode_data(self, data):
4848
return {"slave": uid, "fcode": fcode}
4949
return {}
5050

51-
def frameProcessIncomingPacket(self, single, callback, slave, _tid=None, **kwargs):
51+
def frameProcessIncomingPacket(self, single, callback, slave, tid=None):
5252
"""Process new packet pattern."""
5353
while len(self._buffer):
54-
used_len, _tid, dev_id, data = self.message_handler.decode(self._buffer)
54+
used_len, tid, dev_id, data = self.message_handler.decode(self._buffer)
5555
if not data:
5656
if not used_len:
5757
return

pymodbus/framer/old_framer_base.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ def populateResult(self, result):
125125
result.transaction_id = self._header.get("tid", 0)
126126
result.protocol_id = self._header.get("pid", 0)
127127

128-
def processIncomingPacket(self, data: bytes, callback, slave, **kwargs):
128+
def processIncomingPacket(self, data: bytes, callback, slave, single=False, tid=None):
129129
"""Process new packet pattern.
130130
131131
This takes in a new request packet, adds it to the current
@@ -141,7 +141,8 @@ def processIncomingPacket(self, data: bytes, callback, slave, **kwargs):
141141
:param callback: The function to send results to
142142
:param slave: Process if slave id matches, ignore otherwise (could be a
143143
list of slave ids (server) or single slave id(client/server))
144-
:param kwargs:
144+
:param single: multiple slave ?
145+
:param tid: transaction id
145146
:raises ModbusIOException:
146147
"""
147148
Log.debug("Processing: {}", data, ":hex")
@@ -150,11 +151,10 @@ def processIncomingPacket(self, data: bytes, callback, slave, **kwargs):
150151
return
151152
if not isinstance(slave, (list, tuple)):
152153
slave = [slave]
153-
single = kwargs.pop("single", False)
154-
self.frameProcessIncomingPacket(single, callback, slave, **kwargs)
154+
self.frameProcessIncomingPacket(single, callback, slave, tid=tid)
155155

156156
def frameProcessIncomingPacket(
157-
self, _single, _callback, _slave, _tid=None, **kwargs
157+
self, _single, _callback, _slave, tid=None
158158
) -> None:
159159
"""Process new packet pattern."""
160160

pymodbus/framer/old_framer_rtu.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ def decode_data(self, data):
7070
return {}
7171

7272

73-
def frameProcessIncomingPacket(self, _single, callback, slave, _tid=None, **kwargs): # noqa: C901
73+
def frameProcessIncomingPacket(self, _single, callback, slave, tid=None): # noqa: C901
7474
"""Process new packet pattern."""
7575

7676
def is_frame_ready(self):

pymodbus/framer/old_framer_socket.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ def decode_data(self, data):
5959
}
6060
return {}
6161

62-
def frameProcessIncomingPacket(self, single, callback, slave, tid=None, **kwargs):
62+
def frameProcessIncomingPacket(self, single, callback, slave, tid=None):
6363
"""Process new packet pattern.
6464
6565
This takes in a new request packet, adds it to the current

0 commit comments

Comments
 (0)