Class RegisterBlockFetcher
-
- All Implemented Interfaces:
public class RegisterBlockFetcherA RegisterBlockFetcher needs to have a Schema, a target RegisterBlock and a ModbusDevice
-
-
Constructor Summary
Constructors Constructor Description RegisterBlockFetcher(SchemaDevice schemaDevice, ModbusDevice modbusDevice)
-
Method Summary
Modifier and Type Method Description final List<ModbusQuery>update(Field field)We force an immediate update of all registers needed for the provided field. final List<ModbusQuery>update(Long maxAge)Update all registers related to the needed fields to be updated with a maximum age of the provided milliseconds final List<ModbusQuery>update()Update all registers related to the needed fields to be updated with a maximum age of the provided milliseconds final RegisterBlockgetRegisters(ModbusDevice $self, ModbusQuery modbusQuery)List<ModbusQuery>calculateModbusQueries(Long maxAge)Determine which sets of registers need to be retrieved again. -
-
Constructor Detail
-
RegisterBlockFetcher
RegisterBlockFetcher(SchemaDevice schemaDevice, ModbusDevice modbusDevice)
-
-
Method Detail
-
update
final List<ModbusQuery> update(Field field)
We force an immediate update of all registers needed for the provided field. No batching, buffering or any optimization is done.
- Parameters:
field- The field that must be updated- Returns:
A (possibly empty) list of all modbus queries that have been done (with duration and status)
-
update
@JvmOverloads() final List<ModbusQuery> update(Long maxAge)
Update all registers related to the needed fields to be updated with a maximum age of the provided milliseconds
- Parameters:
maxAge- maximum age of the fields in milliseconds- Returns:
A (possibly empty) list of all fetches that have been done (with duration and status)
-
update
@JvmOverloads() final List<ModbusQuery> update()
Update all registers related to the needed fields to be updated with a maximum age of the provided milliseconds
- Returns:
A (possibly empty) list of all fetches that have been done (with duration and status)
-
getRegisters
final RegisterBlock getRegisters(ModbusDevice $self, ModbusQuery modbusQuery)
-
calculateModbusQueries
List<ModbusQuery> calculateModbusQueries(Long maxAge)
Determine which sets of registers need to be retrieved again.
- Parameters:
maxAge- The maximum age (in milliseconds) of the data for it to need an update.- Returns:
The list of address ranges that must be retrieved (Sorted by the start address)
-
-
-
-