You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by cd...@apache.org on 2019/10/26 15:40:03 UTC

[plc4x] branch feature/plc-simulator updated (9463442 -> d1eef9e)

This is an automated email from the ASF dual-hosted git repository.

cdutz pushed a change to branch feature/plc-simulator
in repository https://gitbox.apache.org/repos/asf/plc4x.git.


    from 9463442  - Continued implemting the functionality to read DBs in the simulator
     add 9cf1925  Migrate README to Github flavored markdown page
     add 5b6e773  Merge pull request #88 from dominikriemer/develop
     add 66d3c86  [OSGi] Resolved all split package situations.
     add e53fb11  [OSGi] Fixing changed package names.
     add 63d8993  [OSGi] Fixing changed package names.
     add 57cda2f  [OSGi] Fixing changed package names.
     add 74ebb95  [OSGi] Fixed Component Annotation.
     add 64010d0  [OSGi] Added feature for S7 Driver.
     add 23165c0  [OSGi] Added version replacement to feature.xml.
     add f958e17  - Excluded the slf4j-api module from all karaf modules
     add 6389e9a  [OSGi] Added initial Implementation of a Exam Test.
     add e41822a  - Added some more documentation on the plugin execution - Split up one execution of two goals into two separate ones - Added a transformation that injects the "<feature>scr</feature>" into the gerated feature.xml
     add ed195bd  [OSGi] Tests not running yet.
     add d070b9c  [OSGi] Finally, integration test is running.
     add b289fb9  [OSGi] Refactoring.
     add 6d4b467  - Removed the XSL again as it seems that it should also work without.
     add 0207eb5  - Added the OSGI Annotation to all remaining drivers - Added a missing OPCUA feature - Added the OPCUA feature to the demo-server
     add 68476f4  [OSGi] Added initial Implementation of a Exam Test.
     add 8ea7ea0  [OSGi] Tests not running yet.
     add b76c41e  [OSGi] Finally, integration test is running.
     add a6edd44  [OSGi] Refactoring.
     add 451f0d5  [Karaf] Improved maven config for IT, added readme.
     add f294e17  [Karaf] Removed "old" module in integartions.C
     add 0fe46ca  [Karaf] Removed "old" module in integartions.
     add 528d041  [Karaf] Fixed bug in feature.xml.
     add d6af5c7  Fixed review comment, removed unused file.
     add ecc5def  - Configured the test to work with failsafe instead of surefire - Cleaned up the maven config
     add 742d4a0  Update bit-io to newest version with OSGi support
     add 4ee6c64  [OSGi] Removed wrap from bit-io as its a OSGi bundle now.
     add 717e549  [Karaf] Bumped version of karaf-maven-plugin to 4.2.7.
     add 543de5c  Merge pull request #89 from JulianFeinauer/feature/resolve-split-package-osgi
     add ebb1bad  PLC4X-144 - When requesting invalid addresses, the DefaultS7MessageProcessor produces errors - The DefaultS7MessageProcessor didn't inspect the return code and tried to merge invalid fields, hereby causing array index errors ... by checking the status code this should be fixed
     add aefcd26  Merge pull request #91 from apache/feature/PLC4X-144
     add 23b61ae  Up to now we couldn't build Thrift with Boost support as Thrift had Boost-Incompatibility issues, these were fixed in 0.13.0: - Bumped the Boost version to the latest 1.71.0 - Bumped the Thrift version to the latest 0.13.0 - Removed the disabling of Boost support in the Thrift build
     add a7a4e0c  Merge pull request #92 from apache/feature/updates-boost-and-thrift-versions
     add d4a8ebf  Revert "Merge pull request #92 from apache/feature/updates-boost-and-thrift-versions"
     add f67777b  - Moved the AB-ETH driver out of the sandbox
     add bd1fb2c  - Updated the RELEASE_NOTES
     add cdd50b4  - Fixed some broken tests (No idea why they were not executed in the sandbox) - Cleaned up some dependency issues (Also no idea why this wasn't detected in the sandbox)
     add 8de71ac  - Prepared the RELEASE_NOTES for the next release cycle
     add 71930eb  - Fixed the information in the LICENSE files as some classes were moved
     add e3869f7  [maven-release-plugin] prepare branch rel/0.5
     add 929229f  [maven-release-plugin] prepare for next development iteration
     add 455f816  - Fixed some of the content on the starting page as reported by Sebb in https://issues.apache.org/jira/browse/PLC4X-145
     add 5f19cab  - Merged some changes from the release branch back to develop -- The way the logstash-core is being built -- Some textual updates on the releases
     add 3aa3992  - Added some profiles to the guides to create the release branch
     add 00b7cdd  PLC4X-146 - Problem when using examples/hello-integration-edgent with plc-simulator
     add 34aabb1  Fixed a problem causing the karaf feature module not to sign the feature.xml artifact causing problems during a release.
     add 6a575b7  Fixed a problem with running the elasticsearch example as updating elasticsearch in general required also updating lucene. Strangely it now needed an additional external dependency.
     add abb7420  Merge pull request #94 from apache/feature/fix-elasticsearch-example
     add 0064a3b  Mixed things I noticed while validating the release
     add 14e731c  Added a rule to the dependency plugin to treat spatial4j as used dependency
     add 3cdd1cf  Bumped the Boost and Thrift version to the latest again (Ran tests on Mac, Linux and Windows)
     add d1629cb  - Fixed the way the Thrift build finds the boost build from plc4x
     new d1eef9e  Merge branches 'develop' and 'feature/plc-simulator' of https://gitbox.apache.org/repos/asf/plc4x into feature/plc-simulator

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 LICENSE                                            |   7 +-
 README => README.md                                | 199 +++++++++++++++------
 RELEASE_NOTES                                      |  34 +++-
 build-utils/language-base-freemarker/pom.xml       |   2 +-
 build-utils/language-java/pom.xml                  |   4 +-
 build-utils/pom.xml                                |   2 +-
 build-utils/protocol-base-mspec/pom.xml            |   2 +-
 build-utils/protocol-test/pom.xml                  |  10 +-
 plc4cpp/pom.xml                                    |  12 +-
 plc4j/api/pom.xml                                  |   4 +-
 .../drivers/ab-eth}/pom.xml                        |  57 ++++--
 .../org/apache/plc4x/java/abeth/AbEthDriver.java   |   0
 .../java/abeth/connection/AbEthFieldHandler.java   |   0
 .../java/abeth/connection/AbEthPlcConnection.java  |   3 +-
 .../apache/plc4x/java/abeth/model/AbEthField.java  |   0
 .../plc4x/java/abeth/model/types/FileType.java     |   0
 .../plc4x/java/abeth/protocol/AbEthProtocol.java   |   0
 .../java/abeth/protocol/Plc4xAbEthProtocol.java    |   0
 .../services/org.apache.plc4x.java.spi.PlcDriver   |   0
 .../org/apache/plc4x/protocol/abeth/AbEthTest.java |   0
 .../test/resources/testsuite/AbEthTestsuite.xml    |  15 +-
 plc4j/drivers/ads/pom.xml                          |  25 ++-
 .../org/apache/plc4x/java/ads/AdsPlcDriver.java    |   2 +
 .../ads/connection/AdsSerialPlcConnection.java     |   2 +-
 .../java/ads/connection/AdsTcpPlcConnection.java   |   3 +-
 .../apache/plc4x/java/ads/AdsPlcDriverTest.java    |   2 +-
 .../ads/connection/AdsConnectionFactoryTest.java   |   4 +-
 .../ads/connection/AdsSerialPlcConnectionTest.java |   4 +-
 plc4j/drivers/ethernet-ip/pom.xml                  |  17 +-
 .../plc4x/java/ethernetip/EtherNetIpPlcDriver.java |   2 +
 .../connection/EtherNetIpTcpPlcConnection.java     |   3 +-
 plc4j/drivers/modbus/pom.xml                       |  21 ++-
 .../apache/plc4x/java/modbus/ModbusPlcDriver.java  |   2 +
 .../connection/ModbusSerialPlcConnection.java      |   2 +-
 .../modbus/connection/ModbusTcpPlcConnection.java  |   3 +-
 .../plc4x/java/modbus/ModbusPlcDriverTest.java     |   2 +-
 .../connection/ModbusConnectionFactoryTest.java    |   4 +-
 .../connection/ModbusSerialPlcConnectionTest.java  |   4 +-
 plc4j/drivers/opcua/pom.xml                        |  12 +-
 .../apache/plc4x/java/opcua/OpcuaPlcDriver.java    |   2 +
 plc4j/drivers/pom.xml                              |   3 +-
 plc4j/drivers/s7/pom.xml                           |  24 ++-
 .../java/org/apache/plc4x/java/s7/S7PlcDriver.java |   2 +
 .../plc4x/java/s7/connection/S7PlcConnection.java  |   2 +-
 .../java/s7/connection/S7PlcTestConnection.java    |   2 +-
 plc4j/drivers/simulated/pom.xml                    |  13 +-
 .../plc4x/java/simulated/SimulatedPlcDriver.java   |   2 +
 plc4j/examples/dummy-driver/pom.xml                |   8 +-
 .../dummydriver/connection/DummyConnection.java    |   2 +-
 plc4j/examples/hello-cloud-azure/pom.xml           |  16 +-
 plc4j/examples/hello-cloud-google/pom.xml          |  16 +-
 plc4j/examples/hello-connectivity-kafka/pom.xml    |  18 +-
 plc4j/examples/hello-connectivity-mqtt/pom.xml     |  16 +-
 plc4j/examples/hello-integration-edgent/pom.xml    |  16 +-
 plc4j/examples/hello-opm/pom.xml                   |  18 +-
 plc4j/examples/hello-storage-elasticsearch/pom.xml |  24 ++-
 plc4j/examples/hello-webapp/client/pom.xml         |   2 +-
 plc4j/examples/hello-webapp/pom.xml                |   2 +-
 plc4j/examples/hello-webapp/service/pom.xml        |  16 +-
 plc4j/examples/hello-webapp/webapp/pom.xml         |   6 +-
 plc4j/examples/hello-world-plc4x/pom.xml           |  16 +-
 plc4j/examples/pom.xml                             |   2 +-
 plc4j/integrations/apache-calcite/pom.xml          |   8 +-
 plc4j/integrations/apache-camel/pom.xml            |   8 +-
 plc4j/integrations/apache-edgent/pom.xml           |  10 +-
 .../apache/plc4x/edgent/PlcConnectionAdapter.java  |  37 +---
 .../apache/plc4x/edgent/mock/MockConnection.java   |   2 +-
 plc4j/integrations/apache-kafka/pom.xml            |  20 +--
 .../apache-karaf/karaf-ads-feature/pom.xml         |  61 -------
 .../apache-karaf/karaf-demo-server/pom.xml         | 127 -------------
 .../apache-karaf/karaf-ethernet-ip-feature/pom.xml |  61 -------
 .../apache-karaf/karaf-modbus-feature/pom.xml      |  61 -------
 .../apache-karaf/karaf-s7-feature/pom.xml          |  61 -------
 .../apache-karaf/karaf-simulated-feature/pom.xml   |  61 -------
 plc4j/integrations/apache-karaf/pom.xml            |  98 ----------
 .../apache-nifi/nifi-plc4x-nar/pom.xml             |  16 +-
 .../apache-nifi/nifi-plc4x-processors/pom.xml      |   4 +-
 plc4j/integrations/apache-nifi/pom.xml             |   2 +-
 plc4j/integrations/logstash-plugin/pom.xml         |  25 +--
 plc4j/integrations/pom.xml                         |   3 +-
 plc4j/karaf-features/README.md                     |  42 +++++
 plc4j/karaf-features/karaf-itest/pom.xml           | 188 +++++++++++++++++++
 .../java/org/apache/plc4x/karaf/FeatureIT.java     | 100 +++++++++++
 .../test/resources/etc/org.ops4j.pax.logging.cfg   |  71 ++++++++
 plc4j/{protocols => karaf-features}/pom.xml        |  89 +++++----
 plc4j/karaf-features/s7/pom.xml                    | 102 +++++++++++
 .../karaf-features/s7/src/main/feature/feature.xml |  48 +++++
 .../java/org/apache/plc4x/karaf/FeatureTest.java   |  91 ++++++++++
 plc4j/pom.xml                                      |   4 +-
 plc4j/protocols/ads/pom.xml                        |   8 +-
 .../java/org/apache/plc4x/java/ads/AdsDumper.java  |   2 +-
 .../commands/types/AdsNotificationSampleTest.java  |   2 +-
 .../ads/api/commands/types/AdsStampHeaderTest.java |   2 +-
 ...load2SerialProtocolExampleConversationTest.java |   2 +-
 .../java/ads/protocol/Plc4x2AdsProtocolTest.java   |   4 +-
 .../java/ads/protocol/util/DigestUtilTest.java     |   2 +-
 plc4j/protocols/benchmarks/pom.xml                 |   4 +-
 plc4j/protocols/delta-v/pom.xml                    |   2 +-
 plc4j/protocols/driver-bases/base/pom.xml          |   6 +-
 plc4j/protocols/driver-bases/pcap-socket/pom.xml   |   8 +-
 plc4j/protocols/driver-bases/pom.xml               |   2 +-
 plc4j/protocols/driver-bases/raw-socket/pom.xml    |   8 +-
 plc4j/protocols/driver-bases/serial/pom.xml        |   6 +-
 .../connection}/connection/SerialChannel.java      |   3 +-
 .../connection/SerialChannelFactory.java           |   3 +-
 .../connection/SerialChannelHandler.java           |   2 +-
 .../connection/SerialPollingSelector.java          |   5 +-
 .../connection}/connection/SerialSelectionKey.java |   3 +-
 .../connection/SerialSelectorProvider.java         |   2 +-
 .../connection/SerialSocketAddress.java            |   2 +-
 .../connection/SerialSocketChannel.java            |   2 +-
 .../base/connection/SerialChannelFactoryTest.java  |   3 +
 plc4j/protocols/driver-bases/tcp/pom.xml           |   6 +-
 .../connection/TcpSocketChannelFactory.java        |   3 +-
 plc4j/protocols/driver-bases/test/pom.xml          |   6 +-
 .../{base => mock}/connection/MockConnection.java  |   3 +-
 .../connection/TestChannelFactory.java             |   3 +-
 .../connection/tcp/TcpHexDumper.java               |   2 +-
 .../protocol/Plc4XSupportedDataTypes.java          |   2 +-
 .../plc4x/java/{base => mock}/util/Assert.java     |   2 +-
 .../plc4x/java/{base => mock}/util/HexUtil.java    |   2 +-
 plc4j/protocols/driver-bases/udp/pom.xml           |   6 +-
 plc4j/protocols/ethernet-ip/pom.xml                |   6 +-
 plc4j/protocols/iso-on-tcp/pom.xml                 |   8 +-
 plc4j/protocols/iso-tp/pom.xml                     |  10 +-
 plc4j/protocols/modbus/pom.xml                     |   8 +-
 .../plc4x/java/modbus/ManualPlc4XModbusTest.java   |   2 +-
 .../java/modbus/netty/Plc4XModbusProtocolTest.java |   6 +-
 plc4j/protocols/pom.xml                            |   2 +-
 plc4j/protocols/s7/pom.xml                         |  10 +-
 .../strategies/DefaultS7MessageProcessor.java      |  51 +++---
 plc4j/utils/connection-pool/pom.xml                |   4 +-
 plc4j/utils/driver-base-java/pom.xml               |   2 +-
 plc4j/utils/interop/pom.xml                        |  12 +-
 plc4j/utils/opm/pom.xml                            |  10 +-
 plc4j/utils/pcap-sockets/pom.xml                   |   2 +-
 plc4j/utils/pom.xml                                |   2 +-
 plc4j/utils/protocol-test-utils/pom.xml            |   4 +-
 plc4j/utils/raw-sockets/pom.xml                    |   4 +-
 .../src/remote-resources/META-INF/LICENSE          |   6 +-
 plc4j/utils/scraper/pom.xml                        |  18 +-
 plc4j/utils/test-utils/pom.xml                     |   2 +-
 plc4net/api/pom.xml                                |   2 +-
 plc4net/plc4net.driver/pom.xml                     |   2 +-
 plc4net/pom.xml                                    |   2 +-
 plc4py/pom.xml                                     |   8 +-
 pom.xml                                            |  33 ++--
 protocols/ab-eth/pom.xml                           |   4 +-
 protocols/bacnetip/pom.xml                         |   4 +-
 protocols/df1/pom.xml                              |   4 +-
 protocols/knxnetip/pom.xml                         |   8 +-
 protocols/pom.xml                                  |   2 +-
 protocols/proxy/pom.xml                            |   2 +-
 protocols/s7/pom.xml                               |   4 +-
 sandbox/code-gen/pom.xml                           |   6 +-
 sandbox/plc-simulator/pom.xml                      |  14 +-
 sandbox/pom.xml                                    |   3 +-
 sandbox/streampipes-connectors/pom.xml             |  14 +-
 sandbox/test-java-bacnetip-driver/pom.xml          |  22 ++-
 sandbox/test-java-df1-driver/pom.xml               |  22 ++-
 .../java/df1/connection/SerialDf1Connection.java   |   2 +-
 sandbox/test-java-knxnetip-driver/pom.xml          |  14 +-
 sandbox/test-java-passive-s7-driver/pom.xml        |  16 +-
 sandbox/test-java-s7-driver/pom.xml                |  12 +-
 src/main/script/prerequisiteCheck.groovy           |   2 -
 src/site/asciidoc/developers/release.adoc          |  23 ++-
 src/site/asciidoc/index.adoc                       |   4 +-
 tools/boost/pom.xml                                |   2 +-
 tools/check_sigs.sh                                |   2 +-
 tools/download_staged_release.sh                   |   2 +-
 tools/logstash/pom.xml                             |  51 ++----
 tools/pom.xml                                      |   2 +-
 tools/thrift/pom.xml                               |  38 +++-
 173 files changed, 1496 insertions(+), 1210 deletions(-)
 rename README => README.md (51%)
 rename {sandbox/test-java-ab-eth-driver => plc4j/drivers/ab-eth}/pom.xml (63%)
 rename {sandbox/test-java-ab-eth-driver => plc4j/drivers/ab-eth}/src/main/java/org/apache/plc4x/java/abeth/AbEthDriver.java (100%)
 rename {sandbox/test-java-ab-eth-driver => plc4j/drivers/ab-eth}/src/main/java/org/apache/plc4x/java/abeth/connection/AbEthFieldHandler.java (100%)
 rename {sandbox/test-java-ab-eth-driver => plc4j/drivers/ab-eth}/src/main/java/org/apache/plc4x/java/abeth/connection/AbEthPlcConnection.java (97%)
 rename {sandbox/test-java-ab-eth-driver => plc4j/drivers/ab-eth}/src/main/java/org/apache/plc4x/java/abeth/model/AbEthField.java (100%)
 rename {sandbox/test-java-ab-eth-driver => plc4j/drivers/ab-eth}/src/main/java/org/apache/plc4x/java/abeth/model/types/FileType.java (100%)
 rename {sandbox/test-java-ab-eth-driver => plc4j/drivers/ab-eth}/src/main/java/org/apache/plc4x/java/abeth/protocol/AbEthProtocol.java (100%)
 rename {sandbox/test-java-ab-eth-driver => plc4j/drivers/ab-eth}/src/main/java/org/apache/plc4x/java/abeth/protocol/Plc4xAbEthProtocol.java (100%)
 rename {sandbox/test-java-ab-eth-driver => plc4j/drivers/ab-eth}/src/main/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver (100%)
 rename {sandbox/test-java-ab-eth-driver => plc4j/drivers/ab-eth}/src/test/java/org/apache/plc4x/protocol/abeth/AbEthTest.java (100%)
 rename {sandbox/test-java-ab-eth-driver => plc4j/drivers/ab-eth}/src/test/resources/testsuite/AbEthTestsuite.xml (90%)
 delete mode 100644 plc4j/integrations/apache-karaf/karaf-ads-feature/pom.xml
 delete mode 100644 plc4j/integrations/apache-karaf/karaf-demo-server/pom.xml
 delete mode 100644 plc4j/integrations/apache-karaf/karaf-ethernet-ip-feature/pom.xml
 delete mode 100644 plc4j/integrations/apache-karaf/karaf-modbus-feature/pom.xml
 delete mode 100644 plc4j/integrations/apache-karaf/karaf-s7-feature/pom.xml
 delete mode 100644 plc4j/integrations/apache-karaf/karaf-simulated-feature/pom.xml
 delete mode 100644 plc4j/integrations/apache-karaf/pom.xml
 create mode 100644 plc4j/karaf-features/README.md
 create mode 100644 plc4j/karaf-features/karaf-itest/pom.xml
 create mode 100644 plc4j/karaf-features/karaf-itest/src/test/java/org/apache/plc4x/karaf/FeatureIT.java
 create mode 100644 plc4j/karaf-features/karaf-itest/src/test/resources/etc/org.ops4j.pax.logging.cfg
 copy plc4j/{protocols => karaf-features}/pom.xml (52%)
 create mode 100644 plc4j/karaf-features/s7/pom.xml
 create mode 100644 plc4j/karaf-features/s7/src/main/feature/feature.xml
 create mode 100644 plc4j/karaf-features/s7/src/test/java/org/apache/plc4x/karaf/FeatureTest.java
 rename plc4j/protocols/driver-bases/serial/src/main/java/org/apache/plc4x/java/{base => serial/connection}/connection/SerialChannel.java (99%)
 rename plc4j/protocols/driver-bases/serial/src/main/java/org/apache/plc4x/java/{base => serial/connection}/connection/SerialChannelFactory.java (96%)
 rename plc4j/protocols/driver-bases/serial/src/main/java/org/apache/plc4x/java/{base => serial/connection}/connection/SerialChannelHandler.java (98%)
 rename plc4j/protocols/driver-bases/serial/src/main/java/org/apache/plc4x/java/{base => serial/connection}/connection/SerialPollingSelector.java (97%)
 rename plc4j/protocols/driver-bases/serial/src/main/java/org/apache/plc4x/java/{base => serial/connection}/connection/SerialSelectionKey.java (95%)
 rename plc4j/protocols/driver-bases/serial/src/main/java/org/apache/plc4x/java/{base => serial/connection}/connection/SerialSelectorProvider.java (97%)
 rename plc4j/protocols/driver-bases/serial/src/main/java/org/apache/plc4x/java/{base => serial/connection}/connection/SerialSocketAddress.java (96%)
 rename plc4j/protocols/driver-bases/serial/src/main/java/org/apache/plc4x/java/{base => serial/connection}/connection/SerialSocketChannel.java (98%)
 rename plc4j/protocols/driver-bases/tcp/src/main/java/org/apache/plc4x/java/{base => tcp}/connection/TcpSocketChannelFactory.java (97%)
 rename plc4j/protocols/driver-bases/test/src/main/java/org/apache/plc4x/java/{base => mock}/connection/MockConnection.java (91%)
 rename plc4j/protocols/driver-bases/test/src/main/java/org/apache/plc4x/java/{base => mock}/connection/TestChannelFactory.java (92%)
 rename plc4j/protocols/driver-bases/test/src/main/java/org/apache/plc4x/java/{base => mock}/connection/tcp/TcpHexDumper.java (98%)
 rename plc4j/protocols/driver-bases/test/src/main/java/org/apache/plc4x/java/{base => mock}/protocol/Plc4XSupportedDataTypes.java (99%)
 rename plc4j/protocols/driver-bases/test/src/main/java/org/apache/plc4x/java/{base => mock}/util/Assert.java (98%)
 rename plc4j/protocols/driver-bases/test/src/main/java/org/apache/plc4x/java/{base => mock}/util/HexUtil.java (97%)


[plc4x] 01/01: Merge branches 'develop' and 'feature/plc-simulator' of https://gitbox.apache.org/repos/asf/plc4x into feature/plc-simulator

Posted by cd...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

cdutz pushed a commit to branch feature/plc-simulator
in repository https://gitbox.apache.org/repos/asf/plc4x.git

commit d1eef9ebb2f21caf12793f27f466908d97f06b6a
Merge: 9463442 d1629cb
Author: Christofer Dutz <ch...@c-ware.de>
AuthorDate: Sat Oct 26 17:39:39 2019 +0200

    Merge branches 'develop' and 'feature/plc-simulator' of https://gitbox.apache.org/repos/asf/plc4x into feature/plc-simulator

 LICENSE                                            |   7 +-
 README => README.md                                | 199 +++++++++++++++------
 RELEASE_NOTES                                      |  34 +++-
 build-utils/language-base-freemarker/pom.xml       |   2 +-
 build-utils/language-java/pom.xml                  |   4 +-
 build-utils/pom.xml                                |   2 +-
 build-utils/protocol-base-mspec/pom.xml            |   2 +-
 build-utils/protocol-test/pom.xml                  |  10 +-
 plc4cpp/pom.xml                                    |  12 +-
 plc4j/api/pom.xml                                  |   4 +-
 .../drivers/ab-eth}/pom.xml                        |  57 ++++--
 .../org/apache/plc4x/java/abeth/AbEthDriver.java   |   0
 .../java/abeth/connection/AbEthFieldHandler.java   |   0
 .../java/abeth/connection/AbEthPlcConnection.java  |   3 +-
 .../apache/plc4x/java/abeth/model/AbEthField.java  |   0
 .../plc4x/java/abeth/model/types/FileType.java     |   0
 .../plc4x/java/abeth/protocol/AbEthProtocol.java   |   0
 .../java/abeth/protocol/Plc4xAbEthProtocol.java    |   0
 .../services/org.apache.plc4x.java.spi.PlcDriver   |   0
 .../org/apache/plc4x/protocol/abeth/AbEthTest.java |   0
 .../test/resources/testsuite/AbEthTestsuite.xml    |  15 +-
 plc4j/drivers/ads/pom.xml                          |  25 ++-
 .../org/apache/plc4x/java/ads/AdsPlcDriver.java    |   2 +
 .../ads/connection/AdsSerialPlcConnection.java     |   2 +-
 .../java/ads/connection/AdsTcpPlcConnection.java   |   3 +-
 .../apache/plc4x/java/ads/AdsPlcDriverTest.java    |   2 +-
 .../ads/connection/AdsConnectionFactoryTest.java   |   4 +-
 .../ads/connection/AdsSerialPlcConnectionTest.java |   4 +-
 plc4j/drivers/ethernet-ip/pom.xml                  |  17 +-
 .../plc4x/java/ethernetip/EtherNetIpPlcDriver.java |   2 +
 .../connection/EtherNetIpTcpPlcConnection.java     |   3 +-
 plc4j/drivers/modbus/pom.xml                       |  21 ++-
 .../apache/plc4x/java/modbus/ModbusPlcDriver.java  |   2 +
 .../connection/ModbusSerialPlcConnection.java      |   2 +-
 .../modbus/connection/ModbusTcpPlcConnection.java  |   3 +-
 .../plc4x/java/modbus/ModbusPlcDriverTest.java     |   2 +-
 .../connection/ModbusConnectionFactoryTest.java    |   4 +-
 .../connection/ModbusSerialPlcConnectionTest.java  |   4 +-
 plc4j/drivers/opcua/pom.xml                        |  12 +-
 .../apache/plc4x/java/opcua/OpcuaPlcDriver.java    |   2 +
 plc4j/drivers/pom.xml                              |   3 +-
 plc4j/drivers/s7/pom.xml                           |  24 ++-
 .../java/org/apache/plc4x/java/s7/S7PlcDriver.java |   2 +
 .../plc4x/java/s7/connection/S7PlcConnection.java  |   2 +-
 .../java/s7/connection/S7PlcTestConnection.java    |   2 +-
 plc4j/drivers/simulated/pom.xml                    |  13 +-
 .../plc4x/java/simulated/SimulatedPlcDriver.java   |   2 +
 plc4j/examples/dummy-driver/pom.xml                |   8 +-
 .../dummydriver/connection/DummyConnection.java    |   2 +-
 plc4j/examples/hello-cloud-azure/pom.xml           |  16 +-
 plc4j/examples/hello-cloud-google/pom.xml          |  16 +-
 plc4j/examples/hello-connectivity-kafka/pom.xml    |  18 +-
 plc4j/examples/hello-connectivity-mqtt/pom.xml     |  16 +-
 plc4j/examples/hello-integration-edgent/pom.xml    |  16 +-
 plc4j/examples/hello-opm/pom.xml                   |  18 +-
 plc4j/examples/hello-storage-elasticsearch/pom.xml |  24 ++-
 plc4j/examples/hello-webapp/client/pom.xml         |   2 +-
 plc4j/examples/hello-webapp/pom.xml                |   2 +-
 plc4j/examples/hello-webapp/service/pom.xml        |  16 +-
 plc4j/examples/hello-webapp/webapp/pom.xml         |   6 +-
 plc4j/examples/hello-world-plc4x/pom.xml           |  16 +-
 plc4j/examples/pom.xml                             |   2 +-
 plc4j/integrations/apache-calcite/pom.xml          |   8 +-
 plc4j/integrations/apache-camel/pom.xml            |   8 +-
 plc4j/integrations/apache-edgent/pom.xml           |  10 +-
 .../apache/plc4x/edgent/PlcConnectionAdapter.java  |  37 +---
 .../apache/plc4x/edgent/mock/MockConnection.java   |   2 +-
 plc4j/integrations/apache-kafka/pom.xml            |  20 +--
 .../apache-karaf/karaf-ads-feature/pom.xml         |  61 -------
 .../apache-karaf/karaf-demo-server/pom.xml         | 127 -------------
 .../apache-karaf/karaf-ethernet-ip-feature/pom.xml |  61 -------
 .../apache-karaf/karaf-modbus-feature/pom.xml      |  61 -------
 .../apache-karaf/karaf-s7-feature/pom.xml          |  61 -------
 .../apache-karaf/karaf-simulated-feature/pom.xml   |  61 -------
 plc4j/integrations/apache-karaf/pom.xml            |  98 ----------
 .../apache-nifi/nifi-plc4x-nar/pom.xml             |  16 +-
 .../apache-nifi/nifi-plc4x-processors/pom.xml      |   4 +-
 plc4j/integrations/apache-nifi/pom.xml             |   2 +-
 plc4j/integrations/logstash-plugin/pom.xml         |  25 +--
 plc4j/integrations/pom.xml                         |   3 +-
 plc4j/karaf-features/README.md                     |  42 +++++
 plc4j/karaf-features/karaf-itest/pom.xml           | 188 +++++++++++++++++++
 .../java/org/apache/plc4x/karaf/FeatureIT.java     | 100 +++++++++++
 .../test/resources/etc/org.ops4j.pax.logging.cfg   |  71 ++++++++
 plc4j/{protocols => karaf-features}/pom.xml        |  89 +++++----
 plc4j/karaf-features/s7/pom.xml                    | 102 +++++++++++
 .../karaf-features/s7/src/main/feature/feature.xml |  48 +++++
 .../java/org/apache/plc4x/karaf/FeatureTest.java   |  91 ++++++++++
 plc4j/pom.xml                                      |   4 +-
 plc4j/protocols/ads/pom.xml                        |   8 +-
 .../java/org/apache/plc4x/java/ads/AdsDumper.java  |   2 +-
 .../commands/types/AdsNotificationSampleTest.java  |   2 +-
 .../ads/api/commands/types/AdsStampHeaderTest.java |   2 +-
 ...load2SerialProtocolExampleConversationTest.java |   2 +-
 .../java/ads/protocol/Plc4x2AdsProtocolTest.java   |   4 +-
 .../java/ads/protocol/util/DigestUtilTest.java     |   2 +-
 plc4j/protocols/benchmarks/pom.xml                 |   4 +-
 plc4j/protocols/delta-v/pom.xml                    |   2 +-
 plc4j/protocols/driver-bases/base/pom.xml          |   6 +-
 plc4j/protocols/driver-bases/pcap-socket/pom.xml   |   8 +-
 plc4j/protocols/driver-bases/pom.xml               |   2 +-
 plc4j/protocols/driver-bases/raw-socket/pom.xml    |   8 +-
 plc4j/protocols/driver-bases/serial/pom.xml        |   6 +-
 .../connection}/connection/SerialChannel.java      |   3 +-
 .../connection/SerialChannelFactory.java           |   3 +-
 .../connection/SerialChannelHandler.java           |   2 +-
 .../connection/SerialPollingSelector.java          |   5 +-
 .../connection}/connection/SerialSelectionKey.java |   3 +-
 .../connection/SerialSelectorProvider.java         |   2 +-
 .../connection/SerialSocketAddress.java            |   2 +-
 .../connection/SerialSocketChannel.java            |   2 +-
 .../base/connection/SerialChannelFactoryTest.java  |   3 +
 plc4j/protocols/driver-bases/tcp/pom.xml           |   6 +-
 .../connection/TcpSocketChannelFactory.java        |   3 +-
 plc4j/protocols/driver-bases/test/pom.xml          |   6 +-
 .../{base => mock}/connection/MockConnection.java  |   3 +-
 .../connection/TestChannelFactory.java             |   3 +-
 .../connection/tcp/TcpHexDumper.java               |   2 +-
 .../protocol/Plc4XSupportedDataTypes.java          |   2 +-
 .../plc4x/java/{base => mock}/util/Assert.java     |   2 +-
 .../plc4x/java/{base => mock}/util/HexUtil.java    |   2 +-
 plc4j/protocols/driver-bases/udp/pom.xml           |   6 +-
 plc4j/protocols/ethernet-ip/pom.xml                |   6 +-
 plc4j/protocols/iso-on-tcp/pom.xml                 |   8 +-
 plc4j/protocols/iso-tp/pom.xml                     |  10 +-
 plc4j/protocols/modbus/pom.xml                     |   8 +-
 .../plc4x/java/modbus/ManualPlc4XModbusTest.java   |   2 +-
 .../java/modbus/netty/Plc4XModbusProtocolTest.java |   6 +-
 plc4j/protocols/pom.xml                            |   2 +-
 plc4j/protocols/s7/pom.xml                         |  10 +-
 .../strategies/DefaultS7MessageProcessor.java      |  51 +++---
 plc4j/utils/connection-pool/pom.xml                |   4 +-
 plc4j/utils/driver-base-java/pom.xml               |   2 +-
 plc4j/utils/interop/pom.xml                        |  12 +-
 plc4j/utils/opm/pom.xml                            |  10 +-
 plc4j/utils/pcap-sockets/pom.xml                   |   2 +-
 plc4j/utils/pom.xml                                |   2 +-
 plc4j/utils/protocol-test-utils/pom.xml            |   4 +-
 plc4j/utils/raw-sockets/pom.xml                    |   4 +-
 .../src/remote-resources/META-INF/LICENSE          |   6 +-
 plc4j/utils/scraper/pom.xml                        |  18 +-
 plc4j/utils/test-utils/pom.xml                     |   2 +-
 plc4net/api/pom.xml                                |   2 +-
 plc4net/plc4net.driver/pom.xml                     |   2 +-
 plc4net/pom.xml                                    |   2 +-
 plc4py/pom.xml                                     |   8 +-
 pom.xml                                            |  33 ++--
 protocols/ab-eth/pom.xml                           |   4 +-
 protocols/bacnetip/pom.xml                         |   4 +-
 protocols/df1/pom.xml                              |   4 +-
 protocols/knxnetip/pom.xml                         |   8 +-
 protocols/pom.xml                                  |   2 +-
 protocols/proxy/pom.xml                            |   2 +-
 protocols/s7/pom.xml                               |   4 +-
 sandbox/code-gen/pom.xml                           |   6 +-
 sandbox/plc-simulator/pom.xml                      |  14 +-
 sandbox/pom.xml                                    |   3 +-
 sandbox/streampipes-connectors/pom.xml             |  14 +-
 sandbox/test-java-bacnetip-driver/pom.xml          |  22 ++-
 sandbox/test-java-df1-driver/pom.xml               |  22 ++-
 .../java/df1/connection/SerialDf1Connection.java   |   2 +-
 sandbox/test-java-knxnetip-driver/pom.xml          |  14 +-
 sandbox/test-java-passive-s7-driver/pom.xml        |  16 +-
 sandbox/test-java-s7-driver/pom.xml                |  12 +-
 src/main/script/prerequisiteCheck.groovy           |   2 -
 src/site/asciidoc/developers/release.adoc          |  23 ++-
 src/site/asciidoc/index.adoc                       |   4 +-
 tools/boost/pom.xml                                |   2 +-
 tools/check_sigs.sh                                |   2 +-
 tools/download_staged_release.sh                   |   2 +-
 tools/logstash/pom.xml                             |  51 ++----
 tools/pom.xml                                      |   2 +-
 tools/thrift/pom.xml                               |  38 +++-
 173 files changed, 1496 insertions(+), 1210 deletions(-)

diff --cc sandbox/plc-simulator/pom.xml
index 238c59d,3ad1731..98e17ae
--- a/sandbox/plc-simulator/pom.xml
+++ b/sandbox/plc-simulator/pom.xml
@@@ -74,15 -85,17 +72,15 @@@
      <dependency>
        <groupId>org.apache.plc4x</groupId>
        <artifactId>plc4j-protocol-driver-base</artifactId>
-       <version>0.5.0-SNAPSHOT</version>
+       <version>0.6.0-SNAPSHOT</version>
      </dependency>
 +
      <dependency>
 -      <groupId>io.netty</groupId>
 -      <artifactId>netty-all</artifactId>
 -      <version>${netty.version}</version>
 -    </dependency>
 -    <dependency>
 -      <groupId>com.fasterxml.jackson.core</groupId>
 -      <artifactId>jackson-annotations</artifactId>
 +      <groupId>org.apache.commons</groupId>
 +      <artifactId>commons-collections4</artifactId>
      </dependency>
 +
 +    <!-- Explicitly override the scope to compile to include these -->
      <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
diff --cc sandbox/test-java-s7-driver/pom.xml
index 98bca1d,1cf9911..7df76b2
--- a/sandbox/test-java-s7-driver/pom.xml
+++ b/sandbox/test-java-s7-driver/pom.xml
@@@ -59,19 -57,9 +57,19 @@@
      <dependency>
        <groupId>org.apache.plc4x</groupId>
        <artifactId>plc4j-utils-driver-base-java</artifactId>
-       <version>0.5.0-SNAPSHOT</version>
+       <version>0.6.0-SNAPSHOT</version>
      </dependency>
      <dependency>
 +      <groupId>org.apache.plc4x</groupId>
 +      <artifactId>plc4j-protocol-driver-base</artifactId>
 +      <version>0.5.0-SNAPSHOT</version>
 +    </dependency>
 +    <dependency>
 +      <groupId>org.apache.plc4x</groupId>
 +      <artifactId>plc4j-protocol-driver-base-tcp</artifactId>
 +      <version>0.5.0-SNAPSHOT</version>
 +    </dependency>
 +    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-annotations</artifactId>
      </dependency>