Hi all, I would strongly like to encourage you to have a look as the API Changes we have listed in Confluence. With the option to have diagrams, I think discussing such changes is a lot easier than in pure text form here.
Currently I am in strong favor of my second proposal [1] Major changes in this: - Address is renamed to PlcField and now can contain type information. - We now have every field aliased with a name, which is used to access this field. - Complete elimination of the {Read/Write}{Request/Response}Items. The data and state is now included in the {Read/Write}{Request/Response} itself. - The ReadResponse for example gets additional getIngeger(), getFloat(), getString() methods, which come in two options: - Just the field alias, which returns the first item value (single value fields) - Both the field alias as well as an index to access any item value (multi value fields) - The ReadResponse contains it's data in form of a byte-array containing the raw data returned from the PLC. - The conversion from PLC to Java types is done via PlcTypeConverters which are part of the driver implementation and handle the mapping (Decoding is done when accessing it, not when parsing the response). - Code accessing the values now looks very similar to the code used in JDBC applications (However not supporting the index-access ... but we could also allow that) Please check this out ... as I would like to start implementing any changes we decide on ASAP ... after all I have 2 weeks before the start of the next Publicity Marathon (4 Conferences and 2 Articles within the next 6 Weeks) ... I would really like to have my slides and articles in a somewhat stable form and not publish things that are changed a few weeks later. Chris [1] https://cwiki.apache.org/confluence/display/PLC4X/Chris%27+Proposal+2 Am 25.08.18, 15:52 schrieb "Christofer Dutz" <christofer.d...@c-ware.de>: Hi Julian, version 2 should now be quite different ... I started reworking my original proposal and decided to revert that an start a second proposal. My first did address some parts needing cleaning up, but I still wasn't quite satisfied with it. So I did another more radical refactoring. If you reload the second there should be a lot of differences. I just hit "save" a few minutes ago however ... but now I'm quite happy with it. So please have another look at the second proposal. And please, maybe add your own proposal ... my versions are just Brainstorming from my side. My favorite is currently "Chris' Proposal 2" ;-) Chris Am 25.08.18, 15:32 schrieb "Julian Feinauer" <j.feina...@pragmaticminds.de>: Hi Chris, I’m about to go through your suggestions fort he API changes (by the way, thanks for your effort and the very nice documentation) and I’m a bit confused about the differences between * Chris Proposal * Chris Proposal 2 They seem very equal to me. Are these two versions of the same proposal or two different proposals? Thanks! Julian