Hey all, just wanted to keep you up to date with some things Sebastian and I discussed off-list. Thanks to Sebastians support the Object Plc Mapping (opm) is now mergend into master and I would love to get some feedback. I hope that I can soon add some documentation on the side about that and I would be happy if someone likes to implement writing (currently only reading is supported), see PLC4X-70.
Sebastian also added an implementation for the Connection Pool. This can become one of the most important features to make it usable in enterprise applications (pooling, keep connections open, …). It is important to note that Marcel opened a PR for the same feature and my impression is that both implementations are lacking some (different) things and thus, together, are a pretty good first shot. Thus, I suggest that we keep PR-30 open [1] or at least the branch intact and move the Proxy Implementations over (added a TODO in the PooledPlcDriverManager which is dangerous, I think) and also add some validation (this should be added to the driver interface or the SPI somewhere, I guess to be able to have a reasonable “ping” for all plc’s, it is in our case not as easy as a “SELECT 1” in JDBC). Thus, we are on a great way, and as soon as we have moved over the necessary parts from PR-30 and probably also added the validation I would be very happy to ship OPM as feature in one of our applications. I’ll then also prepare a sample on that because it makes PLC Connections really as easy as querying a Database via JPA. Thanks especially to Marcel and Sebastian! Julian [1] https://github.com/apache/incubator-plc4x/pull/30