Closed mkrebs81 closed 3 months ago
I am going to have a meeting with David and Robin today, where we are going to have a look at the current state of the Python library. I have found a lot of differences to the Java library in terms of architecture and usage.
Perhaps it would be a good idea to discuss and design the general architecture and interfaces together, for both Java and Python. The result after refactoring would be a more consistent developer experience. I will talk about this on the next roundtable meeting as well.
@mkrebs81 will you meet Robin in person or do you have teams meeting, so i could attend.
it's only in person today. I will keep you informed on our findings.
@mkrebs81 ok, thanks!
Good idea. We may have to have an on site meeting to follow up on this architecture level issues. As one of the architects I like to be part of this discussion,
Please look also at the following issues: ABB RTU meter did not work on Java test anymore (did not yet dived in) An ABB Modbus TCP does NOT exist, I expect that there is a layer disruption porblem for using an EID for proxy configuration (?). An EID is always meant for one TransPortlayer, TranportLayer span has always to be managed by a router or communicator. The proxy should follow this aechitecture. Otherwise, we can not scale up systems. But its only on a rumor basis done thinking.
I'll look at this until tuesday, I'll also check for renamed attributes as it initially followed a logic to mirror existing standards (like EEBUS / IEC).
@ergo-furrer @ArndGerns I suggest you complete the "simple" refactoring first, before changing any functionality:
I will not do any development on the library until then, because that would interfere with your refactoring. I will gladly give feedback if desired.
Add topics about the next big refactoring here.
Separation of Java Maven packages
I suggest a slightly different separation of Maven packages:
sgr-specification
contains the classes generated from XML schema and the description loadersgr-driver-api
contains Java interfaces for all kinds of drivers (Modbus, REST, MQTT, Contact)sgr-drivers
contains default driver implementations (EasyModbus, also REST, MQTT etc.)sgr-library
contains the SGr java library with device interfaces and implementationsNamespace
ch.smartgridready.***
please add your ideas here...