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/05/26 14:24:10 UTC
[plc4x] branch master updated (295b71f -> 6e7f505)
This is an automated email from the ASF dual-hosted git repository.
cdutz pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/plc4x.git.
from 295b71f Merge tag 'release/0.3.1'
add 4f22368 - Added the testsuite name to the test-name output
add db108f7 - Added a first test to the cotp protocol testsuite - Aligned the cotp schema with the tpkt protocol structure
add 572a7f4 - Introduced some "enum"-like construct for the message- and parameter-types.
add 7e49754 - Fixed some problems in the cotp dfdl schema - Implemented a lot of COTP tests
add 0d51987 - Disabled the timeout in order to find out if this was killing our jobs.
add ecb5e6c - Added a little more documentation on things to check when performing a release.
add 6ef0491 - Finished the last missing part in the COTP protocol.
add d3d2cde - Added a merged dfdl schema joining TPKT, COTP and S7 schema.develop - Started creating a testsuite for this merged schema.
add 1699d4b - Fixed the handling of empty elements in the S7 protocol (Setup-Communication Request Payload and Read Var Request Payload)
add f106c25 - removed the downloading of the MD5 hashes
add 15ba63c - Fixed the handling of "CPU Function" packets. - Added a lot of S7 test with real-world packet captures.
add c2006fa - Undid some line-breaks.
add 1f06c0d - Updated the "release:prepare" command to also include the c++ modules.
add 1aedf61 - Implemented the "fillingByte" functionality needed for 1-byte payloads.
add d95081a - Fixed a problem with the S7 not correctly handling fill-bytes in multi-item read-responses and write-requests.
add 98fca57 - Disabled the deployment of all c++ modules as well as the examples.
add e6ff5f9 - Updated the plugin and dependency versions for the used plugins. - Added some git exclusions for CLion - Added some documentation on building with the C++ modules enabled.
add c4d24c5 - Moved the S7 protocol specs into a dedicated s7-protocol module
add 841554b - Cleaned up the structure of the s7 protocol module - Removed the duplicate definitions for the separate protocol layers - Added a dummy SCXML definition of the S7 protocol
add 6f1201d - Added a "sandbox" module
add 315c1bf - Added a new talk (Changed the sorting to have newest on the top)
add ced3a50 - Added a multi-module example consisting of an Apache Royale JavaScript frontend, a Spring service module and a Spring-Boot WAR application bundling everything together.
add f4406f9 - updated the Royale version to the last released version
add c212f77 - Added a first poc on a purely xml dynamic plc4x driver
add 54b9f9c - Fixed some sonarqube findings
add e920496 - Enabled the sandbox profile for the develop branch build.
add de02436 - Fixing more sonarqube findings
add 644d586 Updated the release website and developer documentation.
add 5cb9242 Improved download.adoc site.
add 8489b9f - Updated to the newest reflow-maven-skin - Suppressed the project version in the generated site
add f0e7d31 - Fixed a bug in the SCXML template making the S7 not respond correctly - Started implementing the processing of responses in SCXML
add 3a0dd78 - Added a missing "usedDepencency" entry to the dependenc plugin
add 4d7ff5a Commented the timeout back in again (Wasn't reducing the number of kills) .. I am assuming it's due to some OS limitation and usually occurs with parallel executed builds.
add 66aebb3 - Continued working on the dynamic s7 driver
add 6c49277 - Continued working on the dynamic s7 driver
add 54115fc - Forcefully ensured the scala compilation is done before the java compilation.
add fc06b65 - Cleaned up findings of the dependency plugin.
add c57e078 - Cleaned up findings of the dependency plugin.
add e3cb295 - Finished a fist version of the dynamic driver that is able to read a single item from a remote S7 device. - Placed the word "Eventually" with something that comes closer to the german "Eventuell"
add 4ece82b - Added a missing dependency declaration.
add 9688502 - Fixed a bug only inserting a fill byte by 1 byte payloads, but it must have been in case of an uneven number of bytes.
add cbf2f75 - Fixed a bug only inserting a fill byte by 1 byte payloads, but it must have been in case of an uneven number of bytes.
add 30e31fa Added one step to release documentation.
add 6f50a4d - Renamed the FLAGS constant to FLAGS_MARKERS and changed the short name to "M" which seems to be the usually used one.
add 4cc87d5 - Updated the maven-wrapper to latest changes to avoid problems with invalid headers. - Added attribution to the maven-wrapper project to the LICENSE file.
add 06a7c56 - fixed NPE when reading odd-length array of one-byte base types
add 9410ae3 PLC4X-82 - java.lang.IndexOutOfBoundsException
add 78f84b4 PLC4X-84 - NPE when reading Marker
add b799c2f - Fixed a bug in the code
add 1c85380 - Fixed a problem with the logging setup of the elastic example
add ef76a91 - Added the commits mailinglist to the "mailinglists" section of the pom (In order to have it listed in the generated site)
add 6ba4b8f - Updated the MQTTBee dependency to the released version of the hivemq-mqtt-client (library was renamed)
add 49a6a16 - Updated the
add 85f9a74 - Finished adapting the DFDL schemas and TDML testsuite to Daffodil 2.3.0
add 7ca44d9 - Fine-tuned the pom to satisfy the dependency checker
add a4ae1b8 - Updated the
add 8a7d5cf - Added a first KNX driver commit ... huge work in progress ...
add 6df09b7 - Added a section on cleaning up old releases to the release documentation.
add cdcded4 Merge branches 'develop' and 'feature/daffodil-2.3.0' of https://gitbox.apache.org/repos/asf/incubator-plc4x into feature/daffodil-2.3.0
add 8b29bb5 - Started with the plc4x-maven-plugin
add 539521b - Got a first version of the tests running ...
add 9169c3c - First version using Dom4J and Freemarker to actually generate something ...
add 9ecbc55 - Hopefully last thing the build is complaining about.
add 3b90448 - Added the "Apache" section to the bottom navigation - Added a Apache Trademark disclaimer text to the site - Added TM to the Apache product mentions
add 32d8876 - Moved the AbstractProtocolTest to a new "plc4-protocols-test-utils" module - Continued implementing the KNXNet/IP Protocol -- Finished decoding messages captured on my own KNX bus -- Implemented a testsuite for all of these messages
add e504030 PLC4X-1 - Fix the diagram generation with asciidoctor
add 05fd2e6 - Added a first draft of the decision-making guidelines
add e4d847f - Fixed a little typo in the table syntax
add a28c567 - Made the numeric list appear nicely formatted.
add 0918547 modified Release-Notes to be ensure consistency with 0.3.1 (RC/Release)
add 22b44fe PLC4X-67 - Build fails with OpenJDK 11 reference build - Updated some dependencies to newer versions - Temporarily disabled some test that were causing problems with Java 11
add 4d9b408 PLC4X-87 - Reduce the number of exception during site generation - Moved the declaration of the fake lifecycle-mapping plugin into a dedicated profile
add 8059426 PLC4X-87 - Reduce the number of exception during site generation - Fixed some CVE errors by updating dependency versions - Set the build to fail if a CVE score above 8 is detected
add a89ecef Minor changes on getting-involved.adoc
add 9d113ee Minor Changes
add a89626c Merge pull request #45 from cptblaubaer/develop
add 527ae1b PLC4X-88: - introduced TriggeredScraper and belonging classes - made classes of old scraper deprecated - added scheduled and S7-variable trigger (boolean and numeric) - java-docs - tests for regex pattern of trigger strategy added - added ToDos
add ee46d30 Merge pull request #46 from timbo2k/scraper-extention
add dc5b884 Add Class PlcDriver
add 8c1d0be Changes to the classes of Authentification Exceptions
add dec6ec2 - Fixed some java comment which was causing the site generation to fail
add 4e99caa Merge branch 'develop' of https://gitbox.apache.org/repos/asf/incubator-plc4x into develop
add f31bf79 Necessary changes to make the (new) plc scraper driver agnostic: * The PlcField interface has a (default) method to return the expected java type (to know this upfront) * The PlcConnection interface has a new "parse()" method which allows to explicitly create a Field instance for a given type. * Integration of java-type into TriggeredScraper * Tested and added a TriggeredScraper for Modbus
add eb92a28 [RELEASE] Added download link for Release 0.3.1.
add 1438150 Added PLC4X Banner and download link
add de8877f fixed sonar bugs
add c95f302 fixed one more sonar-bug
add 67c4372 fixed a TriggeredScraper Bug
add 4d6883f Removed dependency check on Jenkins until NVS CVE issue is fixed.
add 53bd914 Removed skip of dependency-check... give build 2 hours.
add a4b403a Site fixes for PLC4X-96, PLC4X-97, PLC4X-98 and PLC4X-99.
add 96899cc Site fixes for PLC4X-96, PLC4X-97, PLC4X-98 and PLC4X-99.
add b04fb86 Site fix for PLC4X-98 (thanks to Sebb for reporting).
add 11d2b20 Necessary changes to make the (new) plc scraper driver agnostic: * The PlcField interface has a (default) method to return the expected java type (to know this upfront) * The PlcConnection interface has a new "parse()" method which allows to explicitly create a Field instance for a given type. * Integration of java-type into TriggeredScraper * Tested and added a TriggeredScraper for Modbus
add 22d573e Merge pull request #47 from apache/extend-Field-with-type-information
add 70258eb Merged GitHub and GitBox
add 2002830 PLC4X-105 - Website has Parent menu that does nothing - Removed the empty "Parent" menu
add 785c364 PLC4X-97 - Anchors display under the page heading - Increased the space before an anchor by 20 pixels
add f041d77 PLC4X-97 - Anchors display under the page heading - Changed the distance for h2 headers
add 55377ec Moved the inheritance suppression into the execution definition
add bcb037a NO JIRA - Added a script for cleaning up the staged site before deploying it
add 21b8017 NO JIRA - Make the cleanup script executable (Try nr. 2)
add 2377fda NO JIRA - Added a page on the Apache Maturity Model - Added a team page - Added some documentation on how to contribute - Added the page on "Decision Making" to the menu
add f30a113 Correcting two typos in contributing.adoc
add 7ec820a Merge pull request #48 from cptblaubaer/develop
add 4f33f8c NO JIRA - Continued documenting the apache maturity model compliance.
add 8731e0e Added jfeinauer to team page.
add 2b204ca Slight correction of jfeinauer team page.
add 1a7a853 NO JIRA - Finished the maturity page ...
add d84c0cd NO JIRA - Added some more conference appearances
add fd86308 NO JIRA - Fixed allotta typoz ;-)
add 1a082cb Some further work on the KNXNet/IP protocol state-machine.
add fc3e100 Merge remote-tracking branch 'upstream/develop' into develop
add 1c14d2e added tmitsch to team page
add 34a4d97 INFRA-18056
add 7a61fa3 Merge pull request #49 from clambertus/develop
add a39e3c8 Preparing a little more complex PR for figguring out the Sync issues.
add 5317c56 Merge pull request #50 from chrisdutz/develop
add 4992d3f Added the content for Sebastian Rühl to the team page.
add 1fb8e53 Removed PLC4S module (another test for PR support)
add cdb2e6d Merge pull request #51 from chrisdutz/develop
add 3ffbd3c Merge branch 'develop' of github.com:apache/incubator-plc4x into develop
add 22908d9 Changed the unpacking of the web-client from the generate-resources to the prepare-package phase.
add 4fbfabf Merge pull request #52 from chrisdutz/develop
add e43d62f Merge branch 'develop' of github.com:apache/incubator-plc4x into develop
add 227a316 - Fixed a link to the conferenced page - Added the meetup in Nürtingen in February
add a769b3c Merge pull request #53 from chrisdutz/develop
add 2bd6952 Merge branch 'develop' of github.com:apache/incubator-plc4x into develop
add 00e0716 Add Classes from Folders Messages, Events and Connection (in part)
add 74a23ad Merge branch 'develop' of https://gitbox.apache.org/repos/asf/incubator-plc4x into develop
add e144909 Merge branch 'develop' of https://gitbox.apache.org/repos/asf/incubator-plc4x into develop
add 1c8ca9e Added a first draft of maven support for Cpp driver base
add 0ffd479 Merge pull request #54 from chrisdutz/develop
add cc3a9f5 - Removed plc4c as this is empty - Added the driber bases to the build
add 1896354 Merge pull request #55 from chrisdutz/develop
add ec7a096 Continued working on getting the C++ driver base to compile with maven: - Renamed the DefaultLocalDateTimeFieldItem.cpp (the "Item" was spelled with an "l" letter L) - Added missing classes to the CMakeLists.txt - Added a rat-exception to prevent usage of CLion (C++ IDE) from breaking the build
add 336ff46 Got the C++ working.
add e10fccc Feature/plc4 x 108 ping method (#57)
add fdb2b6b Fixed the build / changed DynamicS7Connection in accordance with PLC4X-108.
add 08dfd9e Small refactoring.
add f7acdb9 Added some documentation of how to start a local Kafka system ... not 100% finished with the Kafka-Connect part though.
add 77a9676 removed unnecessary sandbox dependency
add 1ef81b0 - Adjusting the website to no longer be an incubating podlings website. - Adjusted the release documentation to TLP release processed. - Adjusted the build to produce TLP release artifacts.
add 3fa9bee - Added two rdp files for the project and the committee (PMC)
add 811a683 - Updated the meetups (Added the IoT Thüringen meetup in June)
add 4192825 - Finished a first operational version of the quickstart for the kafka-connect adapter.
add 3755211 - Added documentation on how to build with Visual Studio. - Added some of the Visual Studio project files to the gitignore list.
add 783a7bc Merge branches 'develop' and 'feature/graduation-adjustments' of https://gitbox.apache.org/repos/asf/incubator-plc4x into feature/graduation-adjustments
add 2aff98f - Undoing some of the changes as the git repos are not yet migrated.
add 9327ea0 Update README
add 14c408b PLC4X-108 - Add ping() method to PlcConnection
add cc7bc95 PLC4X-108 - Add ping() method to PlcConnection
add 2cfe5f2 PLC4X-108 - Add ping() method to PlcConnection
add e5ca759 Merge pull request #59 from apache/feature/alternate-PLC4X-108
add f617792 - Finished the graduation-tasks after the git repos were renamed
add c4d7c22 - Try suppressing the false positive "commit to master" emails.
add 74bfe18 - Finalized the committee and project RDP files.
add 7f6749d Add Logger-Folder with following Blogger, DatDmp, DbgTrace, ErrorCategory, ErrorInfoException, ExLog, CMakeLists Modify TopLevel CMakeLists
add f89fafa Add PlcDriverManager for dynamic Loading PLCDrivers
add 4753c55 Bugfixes for Debug-Mode
add 9f936ee Bugfix double word PUBLIC
add 42f1d2c PLC4X-111 Add initial implementation of the interop server.
add 550d351 PLC4X-111 Imported Python support for the Interop Server. Currently possible for S7.
add 085bcad PLC4X-111 Added Readme and renamed the INIT Script.
add 0f3d363 PLC4X-111 Added Readme and renamed the INIT Script.
add de3a0c1 PLC4X-111 Fixed several scripts.
add 7246345 PLC4X-111 Added meaningful test with assert.
add 7cdd06d PLC4X-111 Minor fix, seems necessary.
add 1eb5b17 Remove temporary stuff from Python via gitignore
add 667e887 PLC4X-111 Rat fixes.. added maven module.
add 2d24599 PLC4X-111 Add initial implementation of the interop server.
add 11b7f14 PLC4X-111 Imported Python support for the Interop Server. Currently possible for S7.
add 87ddc84 PLC4X-111 Added Readme and renamed the INIT Script.
add 7aeefaf PLC4X-111 Added Readme and renamed the INIT Script.
add 0719484 PLC4X-111 Fixed several scripts.
add 82be59e PLC4X-111 Added meaningful test with assert.
add f2246c1 PLC4X-111 Minor fix, seems necessary.
add 5151d28 Remove temporary stuff from Python via gitignore
add 5e848c9 PLC4X-111 Rat fixes.. added maven module.
add de3eba5 Merge branch 'feature/PLC4X-111-interop-server' of https://gitbox.apache.org/repos/asf/plc4x into feature/PLC4X-111-interop-server
add 2371678 - Added a universal build for Boost and Thrift in the tools module.
add c7f32e9 - Got the build working on Mac (unless you use Java 12 .. then you're still fu**ed up ;-))
add 6de3c36 - Added documentation for Windows
add 42ed4c3 - Made the interop server generate the thrift sources with the thrift compiler build as part of the build.
add ce4955a - Made the assembly plugin package the thrift compiler
add 74a7ffe - Added the dependency back in so maven builds the thrift compiler first (I had assumed maven understood that becaue of the dependency plugin)
add 9704f90 PLC4X-111 Kind of works again... kind of, at least...
add deeb08d PLC4X-111 Last test passes.
add 4dda932 PLC4X-111 Removed unnecessary sh skript.
add e22c020 - Streamlined the cpp compilations to package zips and to use the maven dependency mechanism and not rely on relative paths
add 174143a - Continued steamlineing the builds for c++ modules - Adjusted the python build
add dfcadc1 - Working on the windows build
add aca23a4 - Added the original logo variants
add fa2dbe4 Merge branches 'develop' and 'feature/PLC4X-111-interop-server' of github.com:apache/plc4x into feature/PLC4X-111-interop-server
add 6c44c7e - Even more optimization of the build - Disabled some tests causing problems with Java 12
add a54b713 - Some missing documentation parts detected when building on an empty ubuntu node.
add 6d9dc4b - Updated the general setup requirements (Git seems to be required for building Apache NiFi module) - Added missing Python 2.7 installation to the Mac setup requirements
add 009a846 - Updated the DOAP file to include python and c++
add 4e53dc4 - Added the setup prerequisites for a full build of PLC4X to the main README - Removed obsolete parts from the plc4cpp README - Added some more instructions to the tools README
add 725a66e - Updated the starting page
add 0a34e43 - Added missing profiles to the Jenkinsfile
add 0414ac9 - Added python and c++ modules to the SonarQube analysis
add 4ede511 PLC4X-114 - Some tests fail starting with Java 12 - Seems for the modbus driver the code was not needed (Removed the code in question)
add 809de68 - Refactroed the structure of the python module to be more like the other modules
add f375795 - Added the maven-assembly-plugin to package assemblies.
add ef5c829 - Tried to tell sonarqube about c++ and python
add bff2e39 - Disabled forcing the language in Python and C++ as Apache's SonarQube currently doesn't support these languages.
add 174afb5 - Added a first trivial setup.py that gets the important parts from loading the pom.xml in the same directory.
add 1ffe05a Fixed mailto: bug for subscribe links on the mailing-list side.
add 580a9a2 Revert "Fixed mailto: bug for subscribe links on the mailing-list side."
add 60640ec PLC4X-117 - Subscription links on the website not working - Fixed the links
add 894dead - Integrated the call to setup.py to maven - Made sure the python build is run inside target/python directory and not in the module root
add 44bd9d0 PLC4X-117 - Subscription links on the website not working - Added the mailto to the post email address - Added the issues list
add 003477d Merge branch 'develop' of https://gitbox.apache.org/repos/asf/plc4x into develop
add 1800d4b Nested Classes for Builder, PLcConnection modified CMakelists with central import of Boost
add 1d86db6 CMakelists with central import of Boost
add 2ab73c3 Nested Class Builder CMakelists with central import of Boost
add bfe56b0 CMakelists with central import of Boost
add 5bb6338 - Refactored the project structure to include examples and integration modules to the plc4x language they are based on.
add 616c3d6 - Streamlined the calls to run python to be equal for compile and package
add f37a80e - Removed the double import of plc4py
add a1caea1 - Added a new exclusion for Eclipse settings files ".factorypath"
add 51f8781 [PLC4X-110] Added VS solution and project
add 738f5ac [PLC4X-110] Added core class implementation
add 70cffb1 [PLC4X-110] Implemented messages and builders
add a0948e6 Added vscode files to gitignore
add a458f64 Merge branch 'feature/plc4net' of https://github.com/bjoernhoeper/incubator-plc4x into bjoernhoeper-feature/plc4net
add 01fc7a4 - Fine tuned the build and integrated it to maven
add 2e6085f Merge branch 'bjoernhoeper-feature/plc4net' into develop
add f6548ed - Moved up the format descriptor to the top or visual studio won't be able to read the solution.
add c59147b - Added some documentation on how to use PLC4J - Added a warning to the windows installation guide (If you don't run the setup, things will be problematic)
add 68bf9f2 - Enabled the .Net build in the Jenkinsfile
add 2e439a3 Fix link to material
add 3e712a6 Merge pull request #62 from NiklasMerz/fix-link
add d7598ad - Added support for intel based mac systems
add b3555d4 - Updated the banch with latest changed from develop ...
add 68154c4 - Introduced the with-java profile
add e59d737 - Added some imports back, that IntelliJ seems to think are not needed (Had to add them for the second time now)
add dbaab76 - Changed the API to make the code compatible with Java 8 (Constructor version used was marked as "Available since Java 10")
add 9a5c88f Add FOSSA hackathon to event list
add 7ee17df - Enable all modules in site-generation
add ac506ff - Adjusted the README to work after the introduction of the 'with-java' profile.
add 315a769 Merge branch 'develop' of https://gitbox.apache.org/repos/asf/plc4x into develop
add fd40493 Revert: Merge branch 'develop' of https://gitbox.apache.org/repos/asf/plc4x into develop
add 85c3a78 - Added some documentation on how to prepare your development environment.
add 8a490a2 - Fixed a wrong dependency name.
add 6925936 - Added skeleton of a groovy based prerequisite check script.
add 9246ef7 [Fixed] DefaultPlcWriteRequest returns for the types Byte[] and byte[] the wrong handle function "encodeDateTime" it become changed to "encodeByteArray"
add 7f94d6c fixed typo in S7PlcConnection
add 3d8a7e6 Add initial OPC UA project. This is a raw version of the project without any tests or refactoring in a first fully functional state.
add 2801e63 Added NOTICE entry for the use of Milo
add 98c62d0 Added Author field
add b8c09b5 [Fixed] Failure while Timeout of write request [Added] requestTimeout field for variable timeouts
add 2b98afa Added test class bodies and renamed consistently
add 21da7e6 [Fixed] JavaDoc formatting [Added] Warning messages at exception points with the consideration of adding later some run-time exceptions
add 3c00fa3 [Added] descriptive class comments to ManualPLC4XOpcua
add da9ac33 [Fixed] wrong regex description space
add f832e53 PLC4X-125 - Update the ElasticSearch example to a more recent ElasticSearch version
add 03d2469 PLC4X-125 - Update the ElasticSearch example to a more recent ElasticSearch version
add 7e19d81 Updated the status of the languages and drivers on the website.
add 1d6985a Started updating the RELEASE_NOTES for the next release
add 42e3d17 Started updating the RELEASE_NOTES for the next release
add 467bd3f Prepared the RELEASE_NOTES for the next release
add 14f22ab [maven-release-plugin] prepare branch rel/0.4
add 614a35e [maven-release-plugin] prepare for next development iteration
add 9b29e84 Revert "[maven-release-plugin] prepare for next development iteration"
add 7c607de Manually undid some changed the revert missed.
add f9c7707 [maven-release-plugin] prepare branch rel/0.4
add 751c931 [maven-release-plugin] prepare for next development iteration
add 3e425b4 Revert "[maven-release-plugin] prepare for next development iteration"
add 52833f7 Fixed some issues with the build that surfaced during the last release attempt.
add d8ecf5d Changed the way the compilation is supressed as this way the pom is updated during a release.
add e84a660 Fixed some issues with the build that surfaced during the last release attempt.
add cedc9a4 Finished resolving the last issues.
add df8d315 Changed a place the version was not automatically updated.
add 39837c3 Removed some references to "incubating"
add 9c8e30d Moved the definition of the scxml2 dependency into the sandbox.
add d22daab Chenged the dependency to scxml2 to a materialized snapshot version.
add 1b8b993 Added some more documentation to the release documentation.
add f635ba4 Made sure the thrift generation is executed after the unpacking.
add b71c856 [maven-release-plugin] rollback the release of release/0.4.0
add 4924d0a Hopefully finally made the change find it's way into the repo.
add 10739fd [maven-release-plugin] prepare release release/0.4.0
new 6e7f505 - Merged release 0.4.0 to master
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:
.gitignore | 13 +-
.mvn/wrapper/MavenWrapperDownloader.java | 57 +-
.mvn/wrapper/maven-wrapper.properties | 5 +-
.vscode/settings.json | 8 +
DISCLAIMER | 7 -
Jenkinsfile | 32 +-
LICENSE | 9 +-
NOTICE | 3 +
README | 114 +-
RELEASE_NOTES | 30 +
jenkins.pom | 2 +-
.../300ppi/PLC4X logo without mascot@300x.png | Bin 0 -> 18418 bytes
media/logos/300ppi/PLC4X.png | Bin 0 -> 87342 bytes
media/logos/300ppi/logo PLC4X black line@300x.png | Bin 0 -> 50768 bytes
media/logos/300ppi/logo PLC4X color CMYK@300x.png | Bin 0 -> 87342 bytes
media/logos/300ppi/logo PLC4X on dark bg@300x.png | Bin 0 -> 86925 bytes
media/logos/300ppi/logo PLC4X white line@300x.png | Bin 0 -> 46417 bytes
.../mascot color with apache feather@300x.png | Bin 0 -> 127847 bytes
.../300ppi/mascot color without feather@300x.png | Bin 0 -> 91523 bytes
media/logos/PDF/PLC4X logo without mascot.pdf | Bin 0 -> 66597 bytes
media/logos/PDF/logo PLC4X black line.pdf | Bin 0 -> 123655 bytes
media/logos/PDF/logo PLC4X color CMYK@300x.pdf | Bin 0 -> 252702 bytes
media/logos/PDF/logo PLC4X on dark bg.pdf | Bin 0 -> 252970 bytes
media/logos/PDF/logo PLC4X white line.pdf | Bin 0 -> 123558 bytes
.../logos/PDF/mascot color with apache feather.pdf | Bin 0 -> 271570 bytes
media/logos/PDF/mascot color without feather.pdf | Bin 0 -> 249178 bytes
media/logos/SVG/PLC4X logo without mascot.svg | 59 +
media/logos/SVG/logo PLC4X black line.svg | 1598 ++++++++++
media/logos/SVG/logo PLC4X color CMYK@300x.svg | 1492 +++++++++
media/logos/SVG/logo PLC4X on dark bg.svg | 1492 +++++++++
media/logos/SVG/logo PLC4X white line.svg | 1598 ++++++++++
.../logos/SVG/mascot color with apache feather.svg | 2462 ++++++++++++++
media/logos/SVG/mascot color without feather.svg | 1403 ++++++++
mvnw | 67 +-
mvnw.cmd | 25 +-
.../delta-v/pom.xml => plc4cpp/CMakeLists.txt | 31 +-
plc4cpp/README.md | 14 +-
plc4cpp/api/CMakeLists.txt | 76 +
plc4cpp/api/pom.xml | 106 +-
plc4cpp/api/src/assembly/cpp.xml | 47 +
plc4cpp/api/src/main/cmake/CMakeLists.txt | 76 -
.../PlcUsernamePasswordAuthentication.cpp | 14 +-
.../PlcUsernamePasswordAuthentication.h | 4 +-
.../cpp/api/exceptions/PlcConnectionException.h | 6 +-
.../plc4x/cpp/api/exceptions/PlcException.cpp | 6 +-
.../apache/plc4x/cpp/api/exceptions/PlcException.h | 6 +-
.../cpp/api/exceptions/PlcFieldRangeException.cpp | 4 +-
.../PlcIncompatibleDatatypeException.cpp | 4 +-
.../exceptions/PlcIncompatibleDatatypeException.h | 2 +-
.../api/exceptions/PlcInvalidFieldException.cpp | 20 +-
.../cpp/api/exceptions/PlcInvalidFieldException.h | 8 +-
.../plc4x/cpp/api/exceptions/PlcIoException.h | 6 +-
.../api/exceptions/PlcNotImplementedException.h | 2 +-
.../cpp/api/exceptions/PlcProtocolException.h | 6 +-
.../PlcProtocolPayloadTooBigException.cpp | 20 +-
.../exceptions/PlcProtocolPayloadTooBigException.h | 10 +-
.../cpp/api/exceptions/PlcRuntimeException.cpp | 6 +-
.../plc4x/cpp/api/exceptions/PlcRuntimeException.h | 6 +-
.../cpp/api/exceptions/PlcTimeoutException.cpp | 8 +-
.../plc4x/cpp/api/exceptions/PlcTimeoutException.h | 4 +-
.../exceptions/PlcUnsupportedDataTypeException.h | 6 +-
.../exceptions/PlcUnsupportedOperationException.h | 6 +-
.../plc4x/cpp/api/messages/PlcFieldResponse.h | 4 +-
.../plc4x/cpp/api/messages/PlcReadRequest.cpp | 4 +-
.../apache/plc4x/cpp/api/messages/PlcReadRequest.h | 2 +-
.../cpp/api/messages/PlcReadRequestBuilder.cpp | 0
.../plc4x/cpp/api/messages/PlcReadRequestBuilder.h | 2 +-
.../plc4x/cpp/api/messages/PlcReadResponse.h | 144 +-
.../PlcDriver.cpp} | 8 +-
.../main/cpp/org/apache/plc4x/cpp/spi/PlcDriver.h | 85 +
.../pom.xml => plc4cpp/examples/CMakeLists.txt | 23 +-
plc4cpp/{api => examples}/pom.xml | 37 +-
.../pom.xml => plc4cpp/integrations/CMakeLists.txt | 24 +-
.../integrations/apache-mynewt/CMakeLists.txt | 23 +-
.../integrations}/apache-mynewt/pom.xml | 8 +-
.../integrations/edgex-foundry/CMakeLists.txt | 23 +-
.../integrations/edgex-foundry}/pom.xml | 15 +-
{integrations => plc4cpp/integrations}/pom.xml | 16 +-
plc4cpp/libs/boost/pom.xml | 158 +
plc4cpp/libs/boost/src/assembly/cpp-windows.xml | 47 +
.../libs/boost/src/assembly/cpp.xml | 37 +-
plc4cpp/libs/pom.xml | 124 +-
plc4cpp/pom.xml | 204 +-
.../pom.xml => plc4cpp/protocols/CMakeLists.txt | 23 +-
.../protocols/driver-bases/CMakeLists.txt | 23 +-
plc4cpp/protocols/driver-bases/base/CMakeLists.txt | 65 +
plc4cpp/protocols/driver-bases/base/pom.xml | 149 +
.../driver-bases/base/src/assembly/cpp.xml | 47 +
.../cpp/base/connection/AbstractPlcConnection.cpp} | 28 +-
.../cpp/base/connection/AbstractPlcConnection.h | 79 +
.../plc4x/cpp/base/connection/ChannelFactory.cpp} | 11 +-
.../plc4x/cpp/base/connection/ChannelFactory.h} | 34 +-
.../cpp/base/connection/DefaultPlcFieldHandler.cpp | 111 +
.../cpp/base/connection/DefaultPlcFieldHandler.h | 96 +
.../plc4x/cpp/base/connection/PlcFieldHandler.cpp} | 9 +-
.../plc4x/cpp/base/connection/PlcFieldHandler.h | 99 +
.../apache/plc4x/cpp/base/events/ConnectEvent.cpp} | 9 +-
.../apache/plc4x/cpp/base/events/ConnectEvent.h} | 18 +-
.../plc4x/cpp/base/events/ConnectedEvent.cpp} | 9 +-
.../apache/plc4x/cpp/base/events/ConnectedEvent.h} | 17 +-
.../cpp/base/messages/DefaultPlcReadRequest.cpp | 122 +
.../cpp/base/messages/DefaultPlcReadRequest.h | 81 +
.../cpp/base/messages/DefaultPlcWriteRequest.cpp | 120 +
.../cpp/base/messages/DefaultPlcWriteRequest.h | 81 +
.../cpp/base/messages/InternalPlcFieldRequest.cpp} | 10 +-
.../cpp/base/messages/InternalPlcFieldRequest.h} | 29 +-
.../base/messages/InternalPlcFieldResponse.cpp} | 7 +-
.../cpp/base/messages/InternalPlcFieldResponse.h} | 23 +-
.../messages/InternalPlcProprietaryRequest.cpp} | 6 +-
.../base/messages/InternalPlcProprietaryRequest.h} | 31 +-
.../messages/InternalPlcProprietaryResponse.cpp} | 6 +-
.../messages/InternalPlcProprietaryResponse.h} | 31 +-
.../cpp/base/messages/InternalPlcReadRequest.cpp} | 7 +-
.../cpp/base/messages/InternalPlcReadRequest.h} | 33 +-
.../cpp/base/messages/InternalPlcRequest.cpp} | 7 +-
.../plc4x/cpp/base/messages/InternalPlcRequest.h} | 21 +-
.../cpp/base/messages/InternalPlcResponse.cpp} | 7 +-
.../plc4x/cpp/base/messages/InternalPlcResponse.h} | 21 +-
.../cpp/base/messages/InternalPlcWriteRequest.cpp} | 7 +-
.../cpp/base/messages/InternalPlcWriteRequest.h} | 43 +-
.../cpp/base/messages/PlcProprietaryRequest.cpp} | 7 +-
.../cpp/base/messages/PlcProprietaryRequest.h} | 29 +-
.../cpp/base/messages/PlcProprietaryResponse.cpp} | 6 +-
.../cpp/base/messages/PlcProprietaryResponse.h} | 28 +-
.../apache/plc4x/cpp/base/messages/PlcReader.cpp} | 7 +-
.../apache/plc4x/cpp/base/messages/PlcReader.h} | 17 +-
.../apache/plc4x/cpp/base/messages/PlcWriter.cpp} | 7 +-
.../apache/plc4x/cpp/base/messages/PlcWriter.h} | 34 +-
.../base/messages/items/BaseDefaultFieldItem.cpp} | 11 +-
.../cpp/base/messages/items/BaseDefaultFieldItem.h | 136 +
.../messages/items/DefaultBigDecimalFieldItem.cpp | 196 ++
.../messages/items/DefaultBigDecimalFieldItem.h | 83 +
.../messages/items/DefaultBigIntegerFieldItem.cpp | 201 ++
.../messages/items/DefaultBigIntegerFieldItem.h | 84 +
.../messages/items/DefaultBooleanFieldItem.cpp | 196 ++
.../base/messages/items/DefaultBooleanFieldItem.h | 80 +
.../messages/items/DefaultByteArrayFieldItem.cpp | 196 ++
.../messages/items/DefaultByteArrayFieldItem.h | 81 +
.../base/messages/items/DefaultByteFieldItem.cpp | 196 ++
.../cpp/base/messages/items/DefaultByteFieldItem.h | 81 +
.../base/messages/items/DefaultDoubleFieldItem.cpp | 196 ++
.../base/messages/items/DefaultDoubleFieldItem.h | 81 +
.../base/messages/items/DefaultFloatFieldItem.cpp | 196 ++
.../base/messages/items/DefaultFloatFieldItem.h | 81 +
.../messages/items/DefaultIntegerFieldItem.cpp | 196 ++
.../base/messages/items/DefaultIntegerFieldItem.h | 81 +
.../messages/items/DefaultLocalDateFieldItem.cpp | 196 ++
.../messages/items/DefaultLocalDateFieldItem.h | 81 +
.../items/DefaultLocalDateTimeFieldItem.cpp | 95 +
.../messages/items/DefaultLocalDateTimeFieldItem.h | 71 +
.../messages/items/DefaultLocalTimeFieldItem.cpp | 95 +
.../messages/items/DefaultLocalTimeFieldItem.h | 71 +
.../base/messages/items/DefaultLongFieldItem.cpp | 196 ++
.../cpp/base/messages/items/DefaultLongFieldItem.h | 82 +
.../base/messages/items/DefaultShortFieldItem.cpp | 196 ++
.../base/messages/items/DefaultShortFieldItem.h | 82 +
.../messages/items/DefaultStringFieldItem.cpp} | 32 +-
.../base/messages/items/DefaultStringFieldItem.h} | 53 +-
.../protocols/driver-bases}/pom.xml | 12 +-
{plc4c => plc4cpp/protocols}/pom.xml | 14 +-
.../pom.xml => plc4cpp/utils/CMakeLists.txt | 23 +-
.../pom.xml => plc4cpp/utils/logger/CMakeLists.txt | 36 +-
plc4cpp/utils/logger/pom.xml | 150 +
plc4cpp/utils/logger/src/assembly/cpp.xml | 47 +
.../org/apache/plc4x/cpp/utils/logger/BLogger.cpp | 475 +++
.../org/apache/plc4x/cpp/utils/logger/BLogger.h | 157 +
.../org/apache/plc4x/cpp/utils/logger/DatDmp.cpp | 143 +
.../cpp/org/apache/plc4x/cpp/utils/logger/DatDmp.h | 88 +
.../org/apache/plc4x/cpp/utils/logger/DbgTrace.cpp | 64 +-
.../org/apache/plc4x/cpp/utils/logger/DbgTrace.h | 54 +
.../plc4x/cpp/utils/logger/ErrorCategory.cpp | 71 +
.../apache/plc4x/cpp/utils/logger/ErrorCategory.h | 125 +
.../plc4x/cpp/utils/logger/ErrorInfoException.cpp | 171 +
.../plc4x/cpp/utils/logger/ErrorInfoException.h | 83 +
.../org/apache/plc4x/cpp/utils/logger/ExLog.cpp | 143 +
.../cpp/org/apache/plc4x/cpp/utils/logger/ExLog.h | 71 +
{plc4j/drivers/delta-v => plc4cpp/utils}/pom.xml | 19 +-
plc4j/api/pom.xml | 4 +-
.../org/apache/plc4x/java/api/PlcConnection.java | 21 +
.../PlcUnsupportedProtocolException.java | 21 +-
.../org/apache/plc4x/java/api/model/PlcField.java | 16 +
.../plc4x/java/api/types/PlcResponseCode.java | 1 +
plc4j/drivers/ads/pom.xml | 16 +-
.../connection/AdsAbstractPlcConnectionTest.java | 13 +-
.../ads/connection/AdsTcpPlcConnectionTests.java | 19 +-
plc4j/drivers/ethernet-ip/pom.xml | 10 +-
plc4j/drivers/modbus/pom.xml | 14 +-
plc4j/drivers/{simulated => opcua}/pom.xml | 51 +-
.../apache/plc4x/java/opcua/OpcuaPlcDriver.java | 94 +
.../opcua/connection/BaseOpcuaPlcConnection.java | 95 +
.../opcua/connection/OpcuaConnectionFactory.java | 52 +-
.../opcua/connection/OpcuaTcpPlcConnection.java | 464 +++
.../plc4x/java/opcua/protocol/OpcuaField.java | 118 +
.../java/opcua/protocol/OpcuaPlcFieldHandler.java | 151 +
.../opcua/protocol/OpcuaSubsriptionHandle.java | 81 +
.../java/opcua/protocol/model/OpcuaDataTypes.java | 63 +-
.../opcua/protocol/model/OpcuaIdentifierType.java | 50 +-
.../services/org.apache.plc4x.java.spi.PlcDriver | 2 +-
.../apache/plc4x/java/opcua/ManualPLC4XOpcua.java | 145 +
.../plc4x/java/opcua/OpcuaPlcDriverTest.java | 67 +
.../org/apache/plc4x/java/opcua/UtilsTest.java | 35 +-
.../connection/OpcuaTcpPlcConnectionTest.java | 23 +-
.../plc4x/java/opcua/protocol/OpcuaFieldTest.java | 51 +
.../opcua/protocol/OpcuaPlcFieldHandlerTest.java | 23 +-
.../protocol/OpcuaSubscriptionHandleTest.java | 23 +-
plc4j/drivers/pom.xml | 3 +-
plc4j/drivers/s7/pom.xml | 24 +-
.../plc4x/java/s7/connection/S7PlcConnection.java | 10 +-
.../java/s7/connection/S7PlcConnectionIT.java | 2 +
.../java/s7/connection/S7PlcConnectionTests.java | 15 +
plc4j/drivers/simulated/pom.xml | 6 +-
{examples => plc4j/examples}/dummy-driver/pom.xml | 14 +-
.../java/examples/dummydriver/DummyDriver.java | 4 +-
.../dummydriver/connection/DummyConnection.java | 0
.../examples/dummydriver/model/DummyField.java | 0
.../examples/dummydriver/netty/DummyProtocol.java | 0
.../services/org.apache.plc4x.java.spi.PlcDriver | 0
.../examples}/hello-cloud-azure/pom.xml | 14 +-
.../java/examples/cloud/azure/CliOptions.java | 0
.../cloud/azure/S7PlcToAzureIoTHubSample.java | 0
.../examples}/hello-cloud-google/README.md | 0
.../examples}/hello-cloud-google/pom.xml | 12 +-
.../java/examples/cloud/google/CliOptions.java | 0
.../cloud/google/S7PlcToGoogleIoTCoreSample.java | 0
.../src/main/resources/logback.xml | 0
.../hello-connectivity-kafka/kafka-connector.yml | 0
.../examples}/hello-connectivity-kafka/pom.xml | 18 +-
.../examples}/hello-connectivity-kafka/server.sh | 0
.../connectivity/kafka/KafkaConnector.java | 0
.../connectivity/kafka/model/Configuration.java | 0
.../connectivity/kafka/model/KafkaConfig.java | 0
.../connectivity/kafka/model/PlcConfig.java | 0
.../connectivity/kafka/model/PlcFieldConfig.java | 0
.../connectivity/kafka/model/PlcMemoryBlock.java | 0
.../src/main/resources/logback.xml | 0
.../hello-connectivity-mqtt/mqtt-connector.yml | 0
.../examples}/hello-connectivity-mqtt/pom.xml | 21 +-
.../examples/connectivity/mqtt/MqttConnector.java | 12 +-
.../connectivity/mqtt/model/Configuration.java | 0
.../connectivity/mqtt/model/MqttConfig.java | 0
.../connectivity/mqtt/model/PlcConfig.java | 0
.../connectivity/mqtt/model/PlcFieldConfig.java | 0
.../connectivity/mqtt/model/PlcMemoryBlock.java | 0
.../src/main/resources/logback.xml | 0
.../examples}/hello-integration-edgent/pom.xml | 14 +-
.../examples/integration/edgent/CliOptions.java | 0
.../examples/integration/edgent/PlcLogger.java | 0
.../src/main/resources/logback.xml | 0
{examples => plc4j/examples}/hello-opm/pom.xml | 16 +-
.../plc4x/java/examples/helloopm/HelloOpm.java | 0
.../hello-opm/src/main/resources/logback.xml | 0
.../hello-storage-elasticsearch/README.adoc | 0
.../examples}/hello-storage-elasticsearch/pom.xml | 34 +-
.../elasticsearch/ElasticsearchStorage.java | 5 +-
.../src/main/resources/log4j2.xml | 0
.../src/main/resources/logback.xml | 0
plc4j/examples/hello-webapp/client/pom.xml | 136 +
.../client/src/main/royale/HelloPLC4X.mxml | 104 +
.../client/src/main/royale/service/RobotService.as | 92 +
plc4j/examples/hello-webapp/pom.xml | 78 +
.../hello-webapp/service}/pom.xml | 62 +-
.../robot/controllers/RobotController.java | 105 +
plc4j/examples/hello-webapp/webapp/pom.xml | 148 +
.../apache/plc4x/examples/robot/Application.java | 15 +-
.../src/main/resources/application.properties | 10 +-
.../examples}/hello-world-plc4x/pom.xml | 14 +-
.../plc4x/java/examples/helloplc4x/CliOptions.java | 0
.../plc4x/java/examples/helloplc4x/HelloPlc4x.java | 0
.../src/main/resources/logback.xml | 0
{examples => plc4j/examples}/pom.xml | 63 +-
.../integrations}/apache-calcite/pom.xml | 14 +-
.../main/java/org/apache/plc4x/Plc4xBaseTable.java | 0
.../main/java/org/apache/plc4x/Plc4xSchema.java | 6 +-
.../java/org/apache/plc4x/Plc4xSchemaFactory.java | 12 +-
.../java/org/apache/plc4x/Plc4xStreamTable.java | 0
.../src/main/java/org/apache/plc4x/Plc4xTable.java | 0
.../java/org/apache/plc4x/DriverManagerTest.java | 3 +-
.../java/org/apache/plc4x/Plc4XBaseTableTest.java | 4 +-
.../org/apache/plc4x/Plc4xSchemaFactoryTest.java | 2 -
.../apache-calcite/src/test/resources/example.yml | 0
.../apache-calcite}/src/test/resources/logback.xml | 0
.../apache-calcite/src/test/resources/model.json | 0
.../integrations}/apache-camel/pom.xml | 23 +-
.../apache-camel/src/main/docs/PLC4X.adoc | 0
.../java/org/apache/plc4x/camel/Constants.java | 0
.../org/apache/plc4x/camel/Plc4XComponent.java | 0
.../java/org/apache/plc4x/camel/Plc4XConsumer.java | 0
.../java/org/apache/plc4x/camel/Plc4XEndpoint.java | 0
.../apache/plc4x/camel/Plc4XPollingConsumer.java | 0
.../java/org/apache/plc4x/camel/Plc4XProducer.java | 0
.../services/org/apache/camel/component/plc4x | 0
.../java/org/apache/plc4x/camel/ConstantsTest.java | 0
.../java/org/apache/plc4x/camel/ManualTest.java | 0
.../java/org/apache/plc4x/camel/MockDriver.java | 0
.../org/apache/plc4x/camel/Plc4XComponentTest.java | 0
.../org/apache/plc4x/camel/Plc4XConsumerTest.java | 0
.../org/apache/plc4x/camel/Plc4XEndpointTest.java | 0
.../plc4x/camel/Plc4XPollingConsumerTest.java | 0
.../org/apache/plc4x/camel/Plc4XProducerTest.java | 8 +-
.../services/org.apache.plc4x.java.spi.PlcDriver | 0
.../src/test/resources/log4j2.properties | 0
.../apache-camel}/src/test/resources/logback.xml | 0
.../integrations}/apache-edgent/pom.xml | 17 +-
.../apache/plc4x/edgent/PlcConnectionAdapter.java | 0
.../java/org/apache/plc4x/edgent/PlcFunctions.java | 0
.../java/org/apache/plc4x/edgent/package-info.java | 0
.../plc4x/edgent/PlcConnectionAdapterTest.java | 0
.../org/apache/plc4x/edgent/PlcFunctionsTest.java | 0
.../apache/plc4x/edgent/mock/MockConnection.java | 0
.../org/apache/plc4x/edgent/mock/MockDriver.java | 4 +-
.../org/apache/plc4x/edgent/mock/MockField.java | 0
.../apache/plc4x/edgent/mock/MockFieldHandler.java | 0
.../apache/plc4x/edgent/mock/MockFieldItem.java | 0
.../services/org.apache.plc4x.java.spi.PlcDriver | 0
plc4j/integrations/apache-kafka/README.md | 63 +
.../apache-kafka/config/sink.properties | 0
.../apache-kafka/config/source.properties | 0
.../integrations}/apache-kafka/pom.xml | 9 +-
.../org/apache/plc4x/kafka/Plc4xSinkConnector.java | 5 +-
.../java/org/apache/plc4x/kafka/Plc4xSinkTask.java | 0
.../apache/plc4x/kafka/Plc4xSourceConnector.java | 3 +-
.../org/apache/plc4x/kafka/Plc4xSourceTask.java | 0
.../org/apache/plc4x/kafka/util/VersionUtil.java | 0
.../apache-karaf/karaf-ads-feature/pom.xml | 19 +-
.../apache-karaf/karaf-demo-server/pom.xml | 50 +-
.../apache-karaf/karaf-ethernet-ip-feature/pom.xml | 19 +-
.../apache-karaf/karaf-modbus-feature/pom.xml | 19 +-
.../apache-karaf/karaf-s7-feature/pom.xml | 19 +-
.../apache-karaf/karaf-simulated-feature/pom.xml | 19 +-
.../integrations}/apache-karaf/pom.xml | 18 +-
.../nifi-plc4x-nar/false-positives.xml} | 26 +-
.../apache-nifi/nifi-plc4x-nar/pom.xml | 53 +-
.../apache-nifi/nifi-plc4x-processors/pom.xml | 12 +-
.../org/apache/plc4x/nifi/BasePlc4xProcessor.java | 0
.../org/apache/plc4x/nifi/Plc4xSinkProcessor.java | 0
.../apache/plc4x/nifi/Plc4xSourceProcessor.java | 0
.../services/org.apache.nifi.processor.Processor | 0
.../plc4x4nifi/Plc4xSinkProcessorTest.java | 0
.../plc4x4nifi/Plc4xSourceProcessorTest.java | 0
.../integrations}/apache-nifi/pom.xml | 32 +-
plc4j/{drivers => integrations}/pom.xml | 24 +-
plc4j/pom.xml | 298 +-
plc4j/protocols/ads/pom.xml | 8 +-
plc4j/protocols/ads/src/site/asciidoc/index.adoc | 2 +-
.../ads/api/commands/CommandFactoryMethodTest.java | 7 +-
.../ads/api/generic/GenericFactoryMethodTest.java | 7 +-
.../ads/api/serial/SerialFactoryMethodTest.java | 7 +-
.../java/ads/api/tcp/TcpFactoryMethodTest.java | 7 +-
.../java/ads/protocol/Plc4x2AdsProtocolTest.java | 3 +
plc4j/protocols/benchmarks/pom.xml | 4 +-
plc4j/protocols/delta-v/pom.xml | 19 +-
.../java/org/apache/plc4x/java/deltav/PoCES.java | 5 +-
plc4j/protocols/driver-bases/base/pom.xml | 4 +-
.../base/connection/AbstractPlcConnection.java | 8 +
.../plc4x/java/base/connection/ChannelFactory.java | 3 +
.../java/base/connection/NettyPlcConnection.java | 20 +
.../java/base/messages/DefaultPlcWriteRequest.java | 4 +-
.../base/connection/NettyPlcConnectionTest.java | 16 +-
plc4j/protocols/driver-bases/pom.xml | 2 +-
plc4j/protocols/driver-bases/raw-socket/pom.xml | 6 +-
.../base/connection/RawSocketChannelFactory.java | 26 +
plc4j/protocols/driver-bases/serial/pom.xml | 6 +-
.../java/base/connection/SerialChannelFactory.java | 5 +
plc4j/protocols/driver-bases/tcp/pom.xml | 6 +-
.../base/connection/TcpSocketChannelFactory.java | 19 +
plc4j/protocols/driver-bases/test/pom.xml | 6 +-
.../java/base/connection/TestChannelFactory.java | 5 +
.../apache/plc4x/java/mock/PlcMockConnection.java | 7 +
plc4j/protocols/ethernet-ip/pom.xml | 6 +-
.../ethernetip/netty/Plc4XEtherNetIpProtocol.java | 2 +-
.../{img => images}/WAGO_enip_exporer.png | Bin
plc4j/protocols/iso-on-tcp/pom.xml | 8 +-
plc4j/protocols/iso-tp/pom.xml | 10 +-
plc4j/protocols/modbus/pom.xml | 8 +-
.../java/modbus/netty/Plc4XModbusProtocolTest.java | 17 -
plc4j/protocols/pom.xml | 2 +-
plc4j/protocols/s7/pom.xml | 10 +-
.../org/apache/plc4x/java/s7/model/S7Field.java | 31 +
.../org/apache/plc4x/java/s7/netty/S7Protocol.java | 4 +-
.../java/s7/netty/model/types/TransportSize.java | 4 +-
plc4j/protocols/s7/src/site/asciidoc/index.adoc | 2 +-
.../apache/plc4x/java/s7/model/S7FieldTests.java | 8 +
.../asciidoc/developers/implementing-drivers.adoc | 4 +-
plc4j/src/site/asciidoc/index.adoc | 2 +-
plc4j/src/site/asciidoc/users/gettingstarted.adoc | 178 ++
plc4j/utils/connection-pool/pom.xml | 4 +-
.../connectionpool/PooledPlcDriverManagerTest.java | 7 +
plc4j/utils/interop/pom.xml | 217 ++
plc4j/utils/interop/src/assembly/assembly.xml | 41 +
.../java/org/apache/plc4x/interop/impl/Client.java | 60 +
.../org/apache/plc4x/interop/impl/Handler.java | 160 +
.../java/org/apache/plc4x/interop/impl/Server.java | 91 +
plc4j/utils/opm/pom.xml | 10 +-
plc4j/utils/pom.xml | 11 +-
plc4j/utils/raw-sockets/pom.xml | 4 +-
plc4j/utils/scraper/pom.xml | 56 +-
.../org/apache/plc4x/java/scraper/ScrapeJob.java | 35 +-
.../scraper/{ScrapeJob.java => ScrapeJobImpl.java} | 27 +-
.../org/apache/plc4x/java/scraper/Scraper.java | 151 +-
.../scraper/{Scraper.java => ScraperImpl.java} | 52 +-
.../org/apache/plc4x/java/scraper/ScraperTask.java | 170 +-
.../{ScraperTask.java => ScraperTaskImpl.java} | 32 +-
.../java/scraper/config/JobConfiguration.java | 47 +-
...onfiguration.java => JobConfigurationImpl.java} | 21 +-
...ilder.java => JobConfigurationImplBuilder.java} | 16 +-
.../java/scraper/config/ScraperConfiguration.java | 47 +-
.../config/ScraperConfigurationBuilder.java | 12 +-
.../TriggeredJobConfiguration.java} | 29 +-
.../TriggeredJobConfigurationBuilder.java} | 34 +-
.../TriggeredScraperConfiguration.java} | 62 +-
.../TriggeredScraperConfigurationBuilder.java} | 18 +-
.../ScraperConfigurationException.java | 2 +-
.../java/scraper/exception/ScraperException.java} | 31 +-
.../triggeredscraper/TriggeredScrapeJobImpl.java | 73 +
.../TriggeredScraperImpl.java} | 91 +-
.../triggeredscraper/TriggeredScraperTask.java | 225 ++
.../triggerhandler/TriggerConfiguration.java | 412 +++
.../triggerhandler/TriggerHandler.java | 131 +
.../java/scraper/ScraperConfigurationTest.java | 10 +-
.../apache/plc4x/java/scraper/ScraperRunner.java | 5 +-
.../apache/plc4x/java/scraper/ScraperTaskTest.java | 8 +-
.../org/apache/plc4x/java/scraper/ScraperTest.java | 18 +-
...aperRunner.java => TriggeredScraperRunner.java} | 19 +-
.../java/scraper/TriggeredScraperRunnerModbus.java | 60 +
.../config/ScraperConfigurationBuilderTest.java | 13 +-
.../triggerhandler/TriggerConfigurationTest.java | 118 +
.../test/resources/example_triggered_scraper.yml | 40 +-
.../resources/example_triggered_scraper_modbus.yml | 14 +-
plc4j/utils/test-utils/pom.xml | 2 +-
plc4net/.gitignore | 344 ++
plc4net/api/PlcDriverManager.cs | 104 +
.../delta-v/pom.xml => plc4net/api/api.csproj | 24 +-
plc4net/api/api/IPlcConnection.cs | 89 +
plc4net/api/api/IPlcDriver.cs | 57 +
.../api/api/authentication/IPlcAuthentication.cs | 21 +-
.../PlcUsernamePasswordAuthentication.cs | 48 +
.../api/api/metadata/IPlcConnectionMetadata.cs | 38 +-
.../api/exceptions/PlcConnectionException.cs | 37 +-
.../api/exceptions/PlcException.cs | 39 +-
.../api/exceptions/PlcInvalidFieldException.cs | 33 +-
plc4net/api/messages/IPlcFieldRequest.cs | 52 +
plc4net/api/messages/IPlcFieldResponse.cs | 49 +
.../api/messages/IPlcMessage.cs | 21 +-
.../api/messages/IPlcReadRequest.cs | 21 +-
.../api/messages/IPlcReadRequestBuilder.cs | 34 +-
.../api/messages/IPlcReadResponse.cs | 19 +-
.../api/messages/IPlcRequest.cs | 23 +-
.../api/messages/IPlcRequestBuilder.cs | 23 +-
.../api/messages/IPlcResponse.cs | 28 +-
.../api/messages/IPlcSubscriptionEventArgs.cs | 30 +-
.../api/messages/IPlcSubscriptionRequest.cs | 19 +-
.../api/messages/IPlcSubscriptionRequestBuilder.cs | 54 +
.../api/messages/IPlcSubscriptionResponse.cs | 33 +-
.../api/messages/IPlcUnsubscriptionRequest.cs | 21 +-
.../messages/IPlcUnsubscriptionRequestBuilder.cs | 45 +
.../api/messages/IPlcUnsubscriptionResponse.cs | 21 +-
.../api/messages/IPlcWriteRequest.cs | 21 +-
plc4net/api/messages/IPlcWriteRequestBuilder.cs | 134 +
plc4net/api/model/IPlcField.cs | 39 +
.../api/model/IPlcSubscriptionHandle.cs | 22 +-
plc4net/api/pom.xml | 72 +
.../api/types/PlcResponseCode.cs | 24 +-
.../plc4net.driver/plc4net.driver.csproj | 26 +-
plc4net/plc4net.driver/pom.xml | 68 +
plc4net/plc4net.sln | 44 +
{plc4j/drivers => plc4net}/pom.xml | 24 +-
plc4py/README.md | 58 +
plc4py/pom.xml | 219 ++
plc4py/setup.py | 67 +
plc4py/src/assembly/python.xml | 47 +
plc4py/src/main/python/__init__.py | 26 +
plc4py/src/main/python/org/__init__.py | 17 +
plc4py/src/main/python/org/apache/__init__.py | 17 +
.../main/python/org/apache/plc4x/InteropClient.py | 45 +
.../main/python/org/apache/plc4x/PlcConnection.py | 75 +
.../python/org/apache/plc4x/PlcDriverManager.py | 79 +
.../src/main/python/org/apache/plc4x/__init__.py | 17 +
plc4py/src/main/resources/lib/log4j2.xml | 32 +
plc4py/src/test/python/__init__.py | 26 +
plc4py/src/test/python/org/__init__.py | 26 +
plc4py/src/test/python/org/apache/__init__.py | 26 +
.../src/test/python/org/apache/plc4x/__init__.py | 17 +
.../org/apache/plc4x/test_PlcDriverManager.py | 143 +
plc4s/pom.xml | 40 -
pom.xml | 899 +++---
.../delta-v => protocols/knxnet-ip}/pom.xml | 17 +-
protocols/{ => knxnet-ip}/src/main/java/.keepMe | 4 +
.../main/resources/daffodil-built-in-catalog.xml | 22 +-
.../plc4x/protocols/knxnetip/protocol.dfdl.xsd | 582 ++++
.../plc4x/protocols/knxnetip/protocol.scxml.xml | 253 ++
protocols/knxnet-ip/src/site/asciidoc/index.adoc | 57 +
.../plc4x/protocols/knxnetip/ProtocolTest.java} | 10 +-
.../apache/plc4x/protocols/knxnetip/protocol.tdml | 604 ++++
protocols/pom.xml | 53 +-
{plc4j/drivers/delta-v => protocols/proxy}/pom.xml | 12 +-
.../src/main/java/.keepMe} | 17 +-
.../apache/plc4x/protocols/proxy/interop.thrift | 93 +
protocols/{ => s7}/pom.xml | 36 +-
protocols/{ => s7}/src/main/java/.keepMe | 4 +
.../main/resources/daffodil-built-in-catalog.xml | 19 +-
.../apache/plc4x/protocols/s7/protocol.dfdl.xsd} | 596 +++-
.../apache/plc4x/protocols/s7/protocol.scxml.xml | 524 +++
.../org/apache/plc4x/protocols/s7/ManualTest.java | 82 +
.../apache/plc4x/protocols/s7/ProtocolTest.java} | 10 +-
.../org/apache/plc4x/protocols/s7/protocol.tdml | 2446 ++++++++++++++
.../apache/plc4x/protocols/cotp-protocol.dfdl.xsd | 213 --
.../org/apache/plc4x/protocols/tpkt-protocol.tdml | 112 -
protocols/{ => test-utils}/pom.xml | 46 +-
.../plc4x/protocols/AbstractProtocolTest.java | 11 +-
sandbox/dynamic-driver-base/pom.xml | 126 +
.../java/dynamic/actions/BaseConnectedAction.java | 17 +-
.../java/dynamic/actions/BaseDaffodilAction.java | 56 +
.../java/dynamic/actions/BasePlc4xAction.java | 52 +
.../java/dynamic/actions/ConnectAction.java | 81 +
.../java/dynamic/actions/InitContextAction.java | 106 +
.../java/dynamic/actions/ReceiveAction.java | 201 ++
.../actions/ReceiveExtractVerifyAction.java | 114 +
.../java/dynamic/actions/ReceiveRequestAction.java | 42 +-
.../dynamic/actions/ReceiveResponseAction.java | 65 +
.../sandbox/java/dynamic/actions/SendAction.java | 101 +
.../java/dynamic/actions/SendRequestAction.java | 57 +
.../connection/DynamicDriverConnectionBase.java | 153 +
.../java/dynamic/utils/RequestRegistry.java | 66 +
.../utils/JDOMTemplateInfosetInputter.scala | 45 +
.../opm => sandbox/dynamic-driver-s7}/pom.xml | 74 +-
.../sandbox/java/dynamic/s7/DynamicS7Driver.java | 80 +
.../dynamic/s7/actions/S7DecodeArticleNumber.java | 91 +
.../s7/actions/S7DecodeReadResponseAction.java | 315 ++
.../s7/actions/S7DecodeWriteResponseAction.java | 23 +-
.../dynamic/s7/connection/DynamicS7Connection.java | 186 ++
.../dynamic/s7/types/DataTransportErrorCode.java | 62 +
.../java/dynamic/s7/types/DataTransportSize.java | 64 +
.../sandbox/java/dynamic/s7/types/MemoryArea.java | 83 +
.../java/dynamic/s7/types/S7ControllerType.java | 17 +-
.../java/dynamic/s7}/types/TransportSize.java | 8 +-
.../sandbox/java/dynamic/s7/utils}/S7Field.java | 40 +-
.../java/dynamic/s7/utils/S7PlcFieldHandler.java | 569 ++++
.../java/dynamic/s7/utils/S7TsapIdEncoder.java | 28 +-
.../services/org.apache.plc4x.java.spi.PlcDriver | 38 +
sandbox/plc4x-maven-plugin/pom.xml | 225 ++
sandbox/plc4x-maven-plugin/src/it/settings.xml | 53 +
.../plc4x-maven-plugin/src/it/simple-it/pom.xml | 67 +
.../src/main/resources/test/protocol.dfdl.xsd | 67 +-
.../src/it/simple-it/verify.groovy | 13 +-
.../plc4x/plugins/codegenerator/GenerateMojo.java | 208 ++
.../plugins/codegenerator/GenerateMojoTest.java | 68 +
.../test/projects/simple-embedded-schema}/pom.xml | 41 +-
.../src/main/resources/protocol.dfdl.xsd | 67 +-
.../src/main/resources/template.ftlh | 22 +-
{plc4j/drivers => sandbox}/pom.xml | 37 +-
.../main/script/prerequisite-check.groovy | 50 +-
src/site/asciidoc/community/getting-involved.adoc | 102 -
src/site/asciidoc/developers/building.adoc | 38 +-
src/site/asciidoc/developers/ci.adoc | 4 +-
.../{community => developers}/conferences.adoc | 28 +-
src/site/asciidoc/developers/contributing.adoc | 101 +-
src/site/asciidoc/developers/decisions.adoc | 66 +
src/site/asciidoc/developers/jqassistant.adoc | 2 +-
src/site/asciidoc/developers/maturity.adoc | 76 +
src/site/asciidoc/developers/preparing.adoc | 391 +++
src/site/asciidoc/developers/release.adoc | 253 +-
src/site/asciidoc/developers/team.adoc | 55 +
src/site/asciidoc/developers/vpn.adoc | 2 +-
src/site/asciidoc/incubation-proposal.adoc | 227 --
src/site/asciidoc/index.adoc | 43 +-
src/site/asciidoc/protocols/delta-v/index.adoc | 2 +-
src/site/asciidoc/protocols/delta-v/read-data.adoc | 2 +-
.../protocols/delta-v/reverse-engineering.adoc | 4 +-
src/site/asciidoc/protocols/s7/index.adoc | 2 +-
src/site/asciidoc/protocols/s7/s7comm-plus.adoc | 4 +-
src/site/asciidoc/protocols/s7/s7comm.adoc | 2 +-
src/site/asciidoc/users/download.adoc | 64 +-
src/site/asciidoc/users/gettingstarted.adoc | 3 +
src/site/asciidoc/users/industry40.adoc | 2 +-
src/site/resources/css/site.css | 27 +-
.../images/PLC4X_rollup_83x237cm-final.pdf | 3347 ++++++++++++++++++++
.../{img => images}/apache_brooklyn_logo.png | Bin
.../{img => images}/apache_camel_logo.png | Bin
.../{img => images}/apache_edgent_logo.png | Bin
.../{img => images}/apache_kafka_logo.png | Bin
src/site/resources/images/apache_logo.png | Bin 0 -> 16457 bytes
.../{img => images}/apache_mynewt_logo.png | Bin
.../resources/{img => images}/apache_nifi_logo.svg | 0
.../{img => images}/apache_plc4x_logo.png | Bin
.../{img => images}/community-contribute-fork.png | Bin
.../contributing-github-create-pull-request.png | Bin 0 -> 112177 bytes
.../resources/images/contributing-github-fork.png | Bin 0 -> 96553 bytes
src/site/resources/{img => images}/iot-lab.jpg | Bin
.../neo4j-intellij-database-connections-view.png | Bin
.../neo4j-intellij-query-results.png | Bin
.../{img => images}/neo4j-intellij-settings.png | Bin
.../{img => images}/neo4j-web-console.png | Bin
.../{img => images}/plc4x-vpn-beckhoff-route-1.png | Bin
.../{img => images}/plc4x-vpn-beckhoff-route-2.png | Bin
.../{img => images}/plc4x-vpn-beckhoff-route-3.png | Bin
.../{img => images}/plc4x-vpn-beckhoff.jpg | Bin
.../{img => images}/plc4x-vpn-client-download.png | Bin
.../resources/{img => images}/plc4x-vpn-fatek.jpg | Bin
.../{img => images}/plc4x-vpn-siemens-hmi.jpg | Bin
.../{img => images}/plc4x-vpn-siemens-s7.jpg | Bin
.../resources/{img => images}/plc4x-vpn-wago.jpg | Bin
...release-git-diff-next-development-iteration.png | Bin 0 -> 134548 bytes
.../images/release-git-diff-prepare-release.png | Bin 0 -> 132752 bytes
src/site/resources/images/release-git-history.png | Bin 0 -> 160255 bytes
src/site/resources/images/team/cdutz.png | Bin 0 -> 27791 bytes
src/site/resources/images/team/jfeinauer.jpg | Bin 0 -> 24689 bytes
src/site/resources/images/team/sruehl.jpg | Bin 0 -> 15008 bytes
src/site/resources/images/team/tmitsch.png | Bin 0 -> 33005 bytes
src/site/resources/plc4x-doap.rdf | 111 +
src/site/resources/plc4x-pmc.rdf | 74 +
src/site/site.xml | 53 +-
tools/README.md | 72 +
tools/clean-site.sh | 35 +
tools/common.sh | 14 +-
tools/download_staged_release.sh | 11 +-
{plc4j/drivers/delta-v => tools}/pom.xml | 21 +-
tools/thrift/pom.xml | 246 ++
.../thrift/src/assembly/compiler.xml | 34 +-
.../pom.xml => tools/thrift/src/assembly/cpp.xml | 34 +-
tools/thrift/src/assembly/python.xml | 61 +
620 files changed, 40157 insertions(+), 4774 deletions(-)
create mode 100644 .vscode/settings.json
delete mode 100644 DISCLAIMER
create mode 100644 media/logos/300ppi/PLC4X logo without mascot@300x.png
create mode 100644 media/logos/300ppi/PLC4X.png
create mode 100644 media/logos/300ppi/logo PLC4X black line@300x.png
create mode 100644 media/logos/300ppi/logo PLC4X color CMYK@300x.png
create mode 100644 media/logos/300ppi/logo PLC4X on dark bg@300x.png
create mode 100644 media/logos/300ppi/logo PLC4X white line@300x.png
create mode 100644 media/logos/300ppi/mascot color with apache feather@300x.png
create mode 100644 media/logos/300ppi/mascot color without feather@300x.png
create mode 100644 media/logos/PDF/PLC4X logo without mascot.pdf
create mode 100644 media/logos/PDF/logo PLC4X black line.pdf
create mode 100644 media/logos/PDF/logo PLC4X color CMYK@300x.pdf
create mode 100644 media/logos/PDF/logo PLC4X on dark bg.pdf
create mode 100644 media/logos/PDF/logo PLC4X white line.pdf
create mode 100644 media/logos/PDF/mascot color with apache feather.pdf
create mode 100644 media/logos/PDF/mascot color without feather.pdf
create mode 100644 media/logos/SVG/PLC4X logo without mascot.svg
create mode 100644 media/logos/SVG/logo PLC4X black line.svg
create mode 100644 media/logos/SVG/logo PLC4X color CMYK@300x.svg
create mode 100644 media/logos/SVG/logo PLC4X on dark bg.svg
create mode 100644 media/logos/SVG/logo PLC4X white line.svg
create mode 100644 media/logos/SVG/mascot color with apache feather.svg
create mode 100644 media/logos/SVG/mascot color without feather.svg
copy plc4j/drivers/delta-v/pom.xml => plc4cpp/CMakeLists.txt (53%)
create mode 100644 plc4cpp/api/CMakeLists.txt
create mode 100644 plc4cpp/api/src/assembly/cpp.xml
delete mode 100644 plc4cpp/api/src/main/cmake/CMakeLists.txt
mode change 100755 => 100644 plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp
mode change 100755 => 100644 plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.h
copy plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/{api/messages/PlcReadRequestBuilder.cpp => spi/PlcDriver.cpp} (90%)
mode change 100755 => 100644
create mode 100644 plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/spi/PlcDriver.h
copy plc4j/drivers/delta-v/pom.xml => plc4cpp/examples/CMakeLists.txt (53%)
copy plc4cpp/{api => examples}/pom.xml (64%)
copy plc4j/drivers/delta-v/pom.xml => plc4cpp/integrations/CMakeLists.txt (53%)
copy plc4j/drivers/delta-v/pom.xml => plc4cpp/integrations/apache-mynewt/CMakeLists.txt (53%)
rename {integrations => plc4cpp/integrations}/apache-mynewt/pom.xml (87%)
copy plc4j/drivers/delta-v/pom.xml => plc4cpp/integrations/edgex-foundry/CMakeLists.txt (53%)
copy {plc4j/drivers/delta-v => plc4cpp/integrations/edgex-foundry}/pom.xml (78%)
rename {integrations => plc4cpp/integrations}/pom.xml (76%)
create mode 100644 plc4cpp/libs/boost/pom.xml
create mode 100644 plc4cpp/libs/boost/src/assembly/cpp-windows.xml
copy plc4j/drivers/delta-v/pom.xml => plc4cpp/libs/boost/src/assembly/cpp.xml (51%)
copy plc4j/drivers/delta-v/pom.xml => plc4cpp/protocols/CMakeLists.txt (53%)
copy plc4j/drivers/delta-v/pom.xml => plc4cpp/protocols/driver-bases/CMakeLists.txt (53%)
create mode 100644 plc4cpp/protocols/driver-bases/base/CMakeLists.txt
create mode 100644 plc4cpp/protocols/driver-bases/base/pom.xml
create mode 100644 plc4cpp/protocols/driver-bases/base/src/assembly/cpp.xml
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequest.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/connection/AbstractPlcConnection.cpp} (66%)
mode change 100755 => 100644
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/connection/AbstractPlcConnection.h
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/connection/ChannelFactory.cpp} (86%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.h => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/connection/ChannelFactory.h} (63%)
mode change 100755 => 100644
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/connection/DefaultPlcFieldHandler.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/connection/DefaultPlcFieldHandler.h
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/connection/PlcFieldHandler.cpp} (87%)
mode change 100755 => 100644
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/connection/PlcFieldHandler.h
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/events/ConnectEvent.cpp} (87%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/events/ConnectEvent.h} (80%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/events/ConnectedEvent.cpp} (87%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/events/ConnectedEvent.h} (81%)
mode change 100755 => 100644
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/DefaultPlcReadRequest.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/DefaultPlcReadRequest.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/DefaultPlcWriteRequest.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/DefaultPlcWriteRequest.h
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcFieldRequest.cpp} (83%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.h => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcFieldRequest.h} (66%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcFieldResponse.cpp} (89%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcIncompatibleDatatypeException.h => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcFieldResponse.h} (70%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcProprietaryRequest.cpp} (88%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequest.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcProprietaryRequest.h} (66%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcProprietaryResponse.cpp} (88%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequest.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcProprietaryResponse.h} (66%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcReadRequest.cpp} (89%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequest.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcReadRequest.h} (67%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcRequest.cpp} (89%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcRequest.h} (71%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcResponse.cpp} (89%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcResponse.h} (71%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcWriteRequest.cpp} (89%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcFieldResponse.h => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/InternalPlcWriteRequest.h} (53%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/PlcProprietaryRequest.cpp} (89%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.h => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/PlcProprietaryRequest.h} (63%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/PlcProprietaryResponse.cpp} (89%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.h => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/PlcProprietaryResponse.h} (63%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/PlcReader.cpp} (89%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/PlcReader.h} (79%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/PlcWriter.cpp} (89%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.h => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/PlcWriter.h} (63%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequestBuilder.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/BaseDefaultFieldItem.cpp} (85%)
mode change 100755 => 100644
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/BaseDefaultFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultBigDecimalFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultBigDecimalFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultBigIntegerFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultBigIntegerFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultBooleanFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultBooleanFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultByteArrayFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultByteArrayFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultByteFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultByteFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultDoubleFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultDoubleFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultFloatFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultFloatFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultIntegerFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultIntegerFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultLocalDateFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultLocalDateFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultLocalDateTimeFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultLocalDateTimeFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultLocalTimeFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultLocalTimeFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultLongFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultLongFieldItem.h
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultShortFieldItem.cpp
create mode 100644 plc4cpp/protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultShortFieldItem.h
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequest.cpp => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultStringFieldItem.cpp} (59%)
mode change 100755 => 100644
copy plc4cpp/{api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcFieldResponse.h => protocols/driver-bases/base/src/main/cpp/org/apache/plc4x/cpp/base/messages/items/DefaultStringFieldItem.h} (51%)
mode change 100755 => 100644
rename {integrations/apache-brooklyn => plc4cpp/protocols/driver-bases}/pom.xml (79%)
rename {plc4c => plc4cpp/protocols}/pom.xml (81%)
copy plc4j/drivers/delta-v/pom.xml => plc4cpp/utils/CMakeLists.txt (53%)
copy plc4j/drivers/delta-v/pom.xml => plc4cpp/utils/logger/CMakeLists.txt (52%)
create mode 100644 plc4cpp/utils/logger/pom.xml
create mode 100644 plc4cpp/utils/logger/src/assembly/cpp.xml
create mode 100644 plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/BLogger.cpp
create mode 100644 plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/BLogger.h
create mode 100644 plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/DatDmp.cpp
create mode 100644 plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/DatDmp.h
copy src/site/resources/css/site.css => plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/DbgTrace.cpp (54%)
create mode 100644 plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/DbgTrace.h
create mode 100644 plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/ErrorCategory.cpp
create mode 100644 plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/ErrorCategory.h
create mode 100644 plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/ErrorInfoException.cpp
create mode 100644 plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/ErrorInfoException.h
create mode 100644 plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/ExLog.cpp
create mode 100644 plc4cpp/utils/logger/src/main/cpp/org/apache/plc4x/cpp/utils/logger/ExLog.h
copy {plc4j/drivers/delta-v => plc4cpp/utils}/pom.xml (78%)
copy examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcMemoryBlock.java => plc4j/api/src/main/java/org/apache/plc4x/java/api/exceptions/PlcUnsupportedProtocolException.java (66%)
copy plc4j/drivers/{simulated => opcua}/pom.xml (60%)
create mode 100644 plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/OpcuaPlcDriver.java
create mode 100644 plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/BaseOpcuaPlcConnection.java
copy integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XConsumerTest.java => plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/OpcuaConnectionFactory.java (55%)
create mode 100644 plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/OpcuaTcpPlcConnection.java
create mode 100644 plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaField.java
create mode 100644 plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaPlcFieldHandler.java
create mode 100644 plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaSubsriptionHandle.java
copy integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XConsumerTest.java => plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/model/OpcuaDataTypes.java (62%)
copy integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XConsumerTest.java => plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/model/OpcuaIdentifierType.java (50%)
copy {integrations/apache-edgent/src/test => plc4j/drivers/opcua/src/main}/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver (94%)
create mode 100644 plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/ManualPLC4XOpcua.java
create mode 100644 plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/OpcuaPlcDriverTest.java
copy examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcMemoryBlock.java => plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/UtilsTest.java (56%)
copy protocols/src/test/java/org/apache/plc4x/protocols/TpktProtocolTest.java => plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/connection/OpcuaTcpPlcConnectionTest.java (65%)
create mode 100644 plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaFieldTest.java
copy protocols/src/test/java/org/apache/plc4x/protocols/TpktProtocolTest.java => plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaPlcFieldHandlerTest.java (65%)
copy protocols/src/test/java/org/apache/plc4x/protocols/TpktProtocolTest.java => plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaSubscriptionHandleTest.java (65%)
rename {examples => plc4j/examples}/dummy-driver/pom.xml (90%)
rename {examples => plc4j/examples}/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/DummyDriver.java (100%)
rename {examples => plc4j/examples}/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/connection/DummyConnection.java (100%)
copy {examples => plc4j/examples}/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/model/DummyField.java (100%)
rename {examples => plc4j/examples}/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/netty/DummyProtocol.java (100%)
rename {examples => plc4j/examples}/dummy-driver/src/main/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver (100%)
rename {examples => plc4j/examples}/hello-cloud-azure/pom.xml (90%)
rename {examples => plc4j/examples}/hello-cloud-azure/src/main/java/org/apache/plc4x/java/examples/cloud/azure/CliOptions.java (100%)
rename {examples => plc4j/examples}/hello-cloud-azure/src/main/java/org/apache/plc4x/java/examples/cloud/azure/S7PlcToAzureIoTHubSample.java (100%)
rename {examples => plc4j/examples}/hello-cloud-google/README.md (100%)
rename {examples => plc4j/examples}/hello-cloud-google/pom.xml (93%)
rename {examples => plc4j/examples}/hello-cloud-google/src/main/java/org/apache/plc4x/java/examples/cloud/google/CliOptions.java (100%)
rename {examples => plc4j/examples}/hello-cloud-google/src/main/java/org/apache/plc4x/java/examples/cloud/google/S7PlcToGoogleIoTCoreSample.java (100%)
rename {examples => plc4j/examples}/hello-cloud-google/src/main/resources/logback.xml (100%)
rename {examples => plc4j/examples}/hello-connectivity-kafka/kafka-connector.yml (100%)
rename {examples => plc4j/examples}/hello-connectivity-kafka/pom.xml (93%)
rename {examples => plc4j/examples}/hello-connectivity-kafka/server.sh (100%)
rename {examples => plc4j/examples}/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/KafkaConnector.java (100%)
rename {examples => plc4j/examples}/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/Configuration.java (100%)
rename {examples => plc4j/examples}/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/KafkaConfig.java (100%)
rename {examples => plc4j/examples}/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcConfig.java (100%)
rename {examples => plc4j/examples}/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcFieldConfig.java (100%)
copy {examples => plc4j/examples}/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcMemoryBlock.java (100%)
rename {examples/hello-connectivity-mqtt => plc4j/examples/hello-connectivity-kafka}/src/main/resources/logback.xml (100%)
rename {examples => plc4j/examples}/hello-connectivity-mqtt/mqtt-connector.yml (100%)
rename {examples => plc4j/examples}/hello-connectivity-mqtt/pom.xml (87%)
rename {examples => plc4j/examples}/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/MqttConnector.java (94%)
rename {examples => plc4j/examples}/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/Configuration.java (100%)
copy {examples => plc4j/examples}/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/MqttConfig.java (100%)
rename {examples => plc4j/examples}/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcConfig.java (100%)
rename {examples => plc4j/examples}/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcFieldConfig.java (100%)
rename {examples => plc4j/examples}/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcMemoryBlock.java (100%)
rename {examples/hello-connectivity-kafka => plc4j/examples/hello-connectivity-mqtt}/src/main/resources/logback.xml (100%)
rename {examples => plc4j/examples}/hello-integration-edgent/pom.xml (90%)
rename {examples => plc4j/examples}/hello-integration-edgent/src/main/java/org/apache/plc4x/java/examples/integration/edgent/CliOptions.java (100%)
rename {examples => plc4j/examples}/hello-integration-edgent/src/main/java/org/apache/plc4x/java/examples/integration/edgent/PlcLogger.java (100%)
rename {examples/hello-world-plc4x => plc4j/examples/hello-integration-edgent}/src/main/resources/logback.xml (100%)
rename {examples => plc4j/examples}/hello-opm/pom.xml (90%)
rename {examples => plc4j/examples}/hello-opm/src/main/java/org/apache/plc4x/java/examples/helloopm/HelloOpm.java (100%)
rename {examples => plc4j/examples}/hello-opm/src/main/resources/logback.xml (100%)
rename {examples => plc4j/examples}/hello-storage-elasticsearch/README.adoc (100%)
rename {examples => plc4j/examples}/hello-storage-elasticsearch/pom.xml (81%)
rename {examples => plc4j/examples}/hello-storage-elasticsearch/src/main/java/org/apache/plc4x/java/examples/storage/elasticsearch/ElasticsearchStorage.java (98%)
rename {examples => plc4j/examples}/hello-storage-elasticsearch/src/main/resources/log4j2.xml (100%)
rename {examples => plc4j/examples}/hello-storage-elasticsearch/src/main/resources/logback.xml (100%)
create mode 100644 plc4j/examples/hello-webapp/client/pom.xml
create mode 100644 plc4j/examples/hello-webapp/client/src/main/royale/HelloPLC4X.mxml
create mode 100644 plc4j/examples/hello-webapp/client/src/main/royale/service/RobotService.as
create mode 100644 plc4j/examples/hello-webapp/pom.xml
copy plc4j/{protocols/iso-on-tcp => examples/hello-webapp/service}/pom.xml (58%)
create mode 100644 plc4j/examples/hello-webapp/service/src/main/java/org/apache/plc4x/examples/robot/controllers/RobotController.java
create mode 100644 plc4j/examples/hello-webapp/webapp/pom.xml
copy protocols/src/test/java/org/apache/plc4x/protocols/TpktProtocolTest.java => plc4j/examples/hello-webapp/webapp/src/main/java/org/apache/plc4x/examples/robot/Application.java (71%)
copy integrations/apache-camel/src/main/resources/META-INF/services/org/apache/camel/component/plc4x => plc4j/examples/hello-webapp/webapp/src/main/resources/application.properties (76%)
rename {examples => plc4j/examples}/hello-world-plc4x/pom.xml (91%)
rename {examples => plc4j/examples}/hello-world-plc4x/src/main/java/org/apache/plc4x/java/examples/helloplc4x/CliOptions.java (100%)
rename {examples => plc4j/examples}/hello-world-plc4x/src/main/java/org/apache/plc4x/java/examples/helloplc4x/HelloPlc4x.java (100%)
rename {examples/hello-integration-edgent => plc4j/examples/hello-world-plc4x}/src/main/resources/logback.xml (100%)
rename {examples => plc4j/examples}/pom.xml (66%)
rename {integrations => plc4j/integrations}/apache-calcite/pom.xml (91%)
rename {integrations => plc4j/integrations}/apache-calcite/src/main/java/org/apache/plc4x/Plc4xBaseTable.java (100%)
rename {integrations => plc4j/integrations}/apache-calcite/src/main/java/org/apache/plc4x/Plc4xSchema.java (94%)
rename {integrations => plc4j/integrations}/apache-calcite/src/main/java/org/apache/plc4x/Plc4xSchemaFactory.java (81%)
rename {integrations => plc4j/integrations}/apache-calcite/src/main/java/org/apache/plc4x/Plc4xStreamTable.java (100%)
rename {integrations => plc4j/integrations}/apache-calcite/src/main/java/org/apache/plc4x/Plc4xTable.java (100%)
rename {integrations => plc4j/integrations}/apache-calcite/src/test/java/org/apache/plc4x/DriverManagerTest.java (95%)
rename {integrations => plc4j/integrations}/apache-calcite/src/test/java/org/apache/plc4x/Plc4XBaseTableTest.java (94%)
rename {integrations => plc4j/integrations}/apache-calcite/src/test/java/org/apache/plc4x/Plc4xSchemaFactoryTest.java (96%)
copy {integrations => plc4j/integrations}/apache-calcite/src/test/resources/example.yml (100%)
rename {integrations/apache-camel => plc4j/integrations/apache-calcite}/src/test/resources/logback.xml (100%)
rename {integrations => plc4j/integrations}/apache-calcite/src/test/resources/model.json (100%)
rename {integrations => plc4j/integrations}/apache-camel/pom.xml (91%)
rename {integrations => plc4j/integrations}/apache-camel/src/main/docs/PLC4X.adoc (100%)
copy {integrations => plc4j/integrations}/apache-camel/src/main/java/org/apache/plc4x/camel/Constants.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XComponent.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XConsumer.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XEndpoint.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XPollingConsumer.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XProducer.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/main/resources/META-INF/services/org/apache/camel/component/plc4x (100%)
copy {integrations => plc4j/integrations}/apache-camel/src/test/java/org/apache/plc4x/camel/ConstantsTest.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/test/java/org/apache/plc4x/camel/ManualTest.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/test/java/org/apache/plc4x/camel/MockDriver.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XComponentTest.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XConsumerTest.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XEndpointTest.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XPollingConsumerTest.java (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XProducerTest.java (93%)
rename {integrations => plc4j/integrations}/apache-camel/src/test/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver (100%)
rename {integrations => plc4j/integrations}/apache-camel/src/test/resources/log4j2.properties (100%)
rename {integrations/apache-calcite => plc4j/integrations/apache-camel}/src/test/resources/logback.xml (100%)
rename {integrations => plc4j/integrations}/apache-edgent/pom.xml (88%)
rename {integrations => plc4j/integrations}/apache-edgent/src/main/java/org/apache/plc4x/edgent/PlcConnectionAdapter.java (100%)
rename {integrations => plc4j/integrations}/apache-edgent/src/main/java/org/apache/plc4x/edgent/PlcFunctions.java (100%)
rename {integrations => plc4j/integrations}/apache-edgent/src/main/java/org/apache/plc4x/edgent/package-info.java (100%)
rename {integrations => plc4j/integrations}/apache-edgent/src/test/java/org/apache/plc4x/edgent/PlcConnectionAdapterTest.java (100%)
rename {integrations => plc4j/integrations}/apache-edgent/src/test/java/org/apache/plc4x/edgent/PlcFunctionsTest.java (100%)
rename {integrations => plc4j/integrations}/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockConnection.java (100%)
rename {integrations => plc4j/integrations}/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockDriver.java (100%)
rename {integrations => plc4j/integrations}/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockField.java (100%)
rename {integrations => plc4j/integrations}/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockFieldHandler.java (100%)
rename {integrations => plc4j/integrations}/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockFieldItem.java (100%)
rename {integrations => plc4j/integrations}/apache-edgent/src/test/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver (100%)
create mode 100644 plc4j/integrations/apache-kafka/README.md
rename {integrations => plc4j/integrations}/apache-kafka/config/sink.properties (100%)
rename {integrations => plc4j/integrations}/apache-kafka/config/source.properties (100%)
rename {integrations => plc4j/integrations}/apache-kafka/pom.xml (93%)
rename {integrations => plc4j/integrations}/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkConnector.java (95%)
rename {integrations => plc4j/integrations}/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkTask.java (100%)
rename {integrations => plc4j/integrations}/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceConnector.java (98%)
rename {integrations => plc4j/integrations}/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceTask.java (100%)
rename {integrations => plc4j/integrations}/apache-kafka/src/main/java/org/apache/plc4x/kafka/util/VersionUtil.java (100%)
rename {integrations => plc4j/integrations}/apache-karaf/karaf-ads-feature/pom.xml (73%)
rename {integrations => plc4j/integrations}/apache-karaf/karaf-demo-server/pom.xml (62%)
rename {integrations => plc4j/integrations}/apache-karaf/karaf-ethernet-ip-feature/pom.xml (72%)
copy {integrations => plc4j/integrations}/apache-karaf/karaf-modbus-feature/pom.xml (73%)
rename {integrations => plc4j/integrations}/apache-karaf/karaf-s7-feature/pom.xml (73%)
rename {integrations => plc4j/integrations}/apache-karaf/karaf-simulated-feature/pom.xml (72%)
rename {integrations => plc4j/integrations}/apache-karaf/pom.xml (85%)
copy plc4j/{drivers/delta-v/pom.xml => integrations/apache-nifi/nifi-plc4x-nar/false-positives.xml} (57%)
rename {integrations => plc4j/integrations}/apache-nifi/nifi-plc4x-nar/pom.xml (56%)
rename {integrations => plc4j/integrations}/apache-nifi/nifi-plc4x-processors/pom.xml (87%)
rename {integrations => plc4j/integrations}/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/BasePlc4xProcessor.java (100%)
rename {integrations => plc4j/integrations}/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/Plc4xSinkProcessor.java (100%)
rename {integrations => plc4j/integrations}/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/Plc4xSourceProcessor.java (100%)
rename {integrations => plc4j/integrations}/apache-nifi/nifi-plc4x-processors/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor (100%)
rename {integrations => plc4j/integrations}/apache-nifi/nifi-plc4x-processors/src/test/java/org/apache/plc4x/processors/plc4x4nifi/Plc4xSinkProcessorTest.java (100%)
copy {integrations => plc4j/integrations}/apache-nifi/nifi-plc4x-processors/src/test/java/org/apache/plc4x/processors/plc4x4nifi/Plc4xSourceProcessorTest.java (100%)
rename {integrations => plc4j/integrations}/apache-nifi/pom.xml (79%)
copy plc4j/{drivers => integrations}/pom.xml (62%)
rename plc4j/protocols/ethernet-ip/src/site/resources/{img => images}/WAGO_enip_exporer.png (100%)
create mode 100644 plc4j/src/site/asciidoc/users/gettingstarted.adoc
create mode 100644 plc4j/utils/interop/pom.xml
create mode 100644 plc4j/utils/interop/src/assembly/assembly.xml
create mode 100644 plc4j/utils/interop/src/main/java/org/apache/plc4x/interop/impl/Client.java
create mode 100644 plc4j/utils/interop/src/main/java/org/apache/plc4x/interop/impl/Handler.java
create mode 100644 plc4j/utils/interop/src/main/java/org/apache/plc4x/interop/impl/Server.java
copy plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/{ScrapeJob.java => ScrapeJobImpl.java} (65%)
copy plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/{Scraper.java => ScraperImpl.java} (84%)
copy plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/{ScraperTask.java => ScraperTaskImpl.java} (85%)
copy plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/config/{JobConfiguration.java => JobConfigurationImpl.java} (66%)
copy plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/config/{JobConfigurationBuilder.java => JobConfigurationImplBuilder.java} (69%)
copy plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/config/{JobConfiguration.java => triggeredscraper/TriggeredJobConfiguration.java} (59%)
rename plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/config/{JobConfigurationBuilder.java => triggeredscraper/TriggeredJobConfigurationBuilder.java} (51%)
copy plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/config/{ScraperConfiguration.java => triggeredscraper/TriggeredScraperConfiguration.java} (58%)
copy plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/config/{ScraperConfigurationBuilder.java => triggeredscraper/TriggeredScraperConfigurationBuilder.java} (62%)
rename plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/{config => exception}/ScraperConfigurationException.java (96%)
copy plc4j/utils/scraper/src/{test/java/org/apache/plc4x/java/scraper/ScraperRunner.java => main/java/org/apache/plc4x/java/scraper/exception/ScraperException.java} (55%)
create mode 100644 plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/triggeredscraper/TriggeredScrapeJobImpl.java
copy plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/{Scraper.java => triggeredscraper/TriggeredScraperImpl.java} (63%)
create mode 100644 plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/triggeredscraper/TriggeredScraperTask.java
create mode 100644 plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/triggeredscraper/triggerhandler/TriggerConfiguration.java
create mode 100644 plc4j/utils/scraper/src/main/java/org/apache/plc4x/java/scraper/triggeredscraper/triggerhandler/TriggerHandler.java
copy plc4j/utils/scraper/src/test/java/org/apache/plc4x/java/scraper/{ScraperRunner.java => TriggeredScraperRunner.java} (57%)
create mode 100644 plc4j/utils/scraper/src/test/java/org/apache/plc4x/java/scraper/TriggeredScraperRunnerModbus.java
create mode 100644 plc4j/utils/scraper/src/test/java/org/apache/plc4x/java/scraper/triggeredscraper/triggerhandler/TriggerConfigurationTest.java
copy integrations/apache-calcite/src/test/resources/example.yml => plc4j/utils/scraper/src/test/resources/example_triggered_scraper.yml (53%)
rename integrations/apache-calcite/src/test/resources/example.yml => plc4j/utils/scraper/src/test/resources/example_triggered_scraper_modbus.yml (84%)
create mode 100644 plc4net/.gitignore
create mode 100644 plc4net/api/PlcDriverManager.cs
copy plc4j/drivers/delta-v/pom.xml => plc4net/api/api.csproj (56%)
create mode 100644 plc4net/api/api/IPlcConnection.cs
create mode 100644 plc4net/api/api/IPlcDriver.cs
copy plc4j/api/src/main/java/org/apache/plc4x/java/api/types/PlcResponseCode.java => plc4net/api/api/authentication/IPlcAuthentication.cs (77%)
create mode 100644 plc4net/api/api/authentication/PlcUsernamePasswordAuthentication.cs
copy plc4j/protocols/driver-bases/test/src/main/java/org/apache/plc4x/java/base/connection/TestChannelFactory.java => plc4net/api/api/metadata/IPlcConnectionMetadata.cs (58%)
copy integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ConstantsTest.java => plc4net/api/exceptions/PlcConnectionException.cs (53%)
copy integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ConstantsTest.java => plc4net/api/exceptions/PlcException.cs (53%)
copy integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ConstantsTest.java => plc4net/api/exceptions/PlcInvalidFieldException.cs (56%)
create mode 100644 plc4net/api/messages/IPlcFieldRequest.cs
create mode 100644 plc4net/api/messages/IPlcFieldResponse.cs
copy plc4j/api/src/main/java/org/apache/plc4x/java/api/types/PlcResponseCode.java => plc4net/api/messages/IPlcMessage.cs (80%)
copy plc4j/api/src/main/java/org/apache/plc4x/java/api/types/PlcResponseCode.java => plc4net/api/messages/IPlcReadRequest.cs (78%)
copy plc4j/protocols/driver-bases/test/src/main/java/org/apache/plc4x/java/base/connection/TestChannelFactory.java => plc4net/api/messages/IPlcReadRequestBuilder.cs (56%)
copy plc4j/api/src/main/java/org/apache/plc4x/java/api/types/PlcResponseCode.java => plc4net/api/messages/IPlcReadResponse.cs (78%)
copy integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Constants.java => plc4net/api/messages/IPlcRequest.cs (62%)
copy integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Constants.java => plc4net/api/messages/IPlcRequestBuilder.cs (61%)
copy examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/model/DummyField.java => plc4net/api/messages/IPlcResponse.cs (70%)
rename examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/model/DummyField.java => plc4net/api/messages/IPlcSubscriptionEventArgs.cs (68%)
copy plc4j/api/src/main/java/org/apache/plc4x/java/api/types/PlcResponseCode.java => plc4net/api/messages/IPlcSubscriptionRequest.cs (78%)
create mode 100644 plc4net/api/messages/IPlcSubscriptionRequestBuilder.cs
rename integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ConstantsTest.java => plc4net/api/messages/IPlcSubscriptionResponse.cs (51%)
copy plc4j/api/src/main/java/org/apache/plc4x/java/api/types/PlcResponseCode.java => plc4net/api/messages/IPlcUnsubscriptionRequest.cs (78%)
create mode 100644 plc4net/api/messages/IPlcUnsubscriptionRequestBuilder.cs
copy plc4j/api/src/main/java/org/apache/plc4x/java/api/types/PlcResponseCode.java => plc4net/api/messages/IPlcUnsubscriptionResponse.cs (77%)
copy integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Constants.java => plc4net/api/messages/IPlcWriteRequest.cs (71%)
create mode 100644 plc4net/api/messages/IPlcWriteRequestBuilder.cs
create mode 100644 plc4net/api/model/IPlcField.cs
copy integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Constants.java => plc4net/api/model/IPlcSubscriptionHandle.cs (65%)
create mode 100644 plc4net/api/pom.xml
rename integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Constants.java => plc4net/api/types/PlcResponseCode.cs (72%)
copy plc4j/drivers/delta-v/pom.xml => plc4net/plc4net.driver/plc4net.driver.csproj (56%)
create mode 100644 plc4net/plc4net.driver/pom.xml
create mode 100644 plc4net/plc4net.sln
copy {plc4j/drivers => plc4net}/pom.xml (72%)
create mode 100644 plc4py/README.md
create mode 100644 plc4py/pom.xml
create mode 100644 plc4py/setup.py
create mode 100644 plc4py/src/assembly/python.xml
create mode 100644 plc4py/src/main/python/__init__.py
create mode 100644 plc4py/src/main/python/org/__init__.py
create mode 100644 plc4py/src/main/python/org/apache/__init__.py
create mode 100644 plc4py/src/main/python/org/apache/plc4x/InteropClient.py
create mode 100644 plc4py/src/main/python/org/apache/plc4x/PlcConnection.py
create mode 100644 plc4py/src/main/python/org/apache/plc4x/PlcDriverManager.py
create mode 100644 plc4py/src/main/python/org/apache/plc4x/__init__.py
create mode 100644 plc4py/src/main/resources/lib/log4j2.xml
create mode 100644 plc4py/src/test/python/__init__.py
create mode 100644 plc4py/src/test/python/org/__init__.py
create mode 100644 plc4py/src/test/python/org/apache/__init__.py
create mode 100644 plc4py/src/test/python/org/apache/plc4x/__init__.py
create mode 100644 plc4py/src/test/python/org/apache/plc4x/test_PlcDriverManager.py
delete mode 100644 plc4s/pom.xml
copy {plc4j/drivers/delta-v => protocols/knxnet-ip}/pom.xml (72%)
copy protocols/{ => knxnet-ip}/src/main/java/.keepMe (81%)
copy plc4j/drivers/delta-v/pom.xml => protocols/knxnet-ip/src/main/resources/daffodil-built-in-catalog.xml (57%)
create mode 100644 protocols/knxnet-ip/src/main/resources/org/apache/plc4x/protocols/knxnetip/protocol.dfdl.xsd
create mode 100644 protocols/knxnet-ip/src/main/resources/org/apache/plc4x/protocols/knxnetip/protocol.scxml.xml
create mode 100644 protocols/knxnet-ip/src/site/asciidoc/index.adoc
copy protocols/{src/test/java/org/apache/plc4x/protocols/TpktProtocolTest.java => knxnet-ip/src/test/java/org/apache/plc4x/protocols/knxnetip/ProtocolTest.java} (77%)
create mode 100644 protocols/knxnet-ip/src/test/resources/org/apache/plc4x/protocols/knxnetip/protocol.tdml
copy {plc4j/drivers/delta-v => protocols/proxy}/pom.xml (78%)
rename protocols/{src/main/dfdl/daffodil-built-in-catalog.xml => proxy/src/main/java/.keepMe} (63%)
create mode 100644 protocols/proxy/src/main/resources/org/apache/plc4x/protocols/proxy/interop.thrift
copy protocols/{ => s7}/pom.xml (68%)
rename protocols/{ => s7}/src/main/java/.keepMe (81%)
rename integrations/apache-kafka/README.md => protocols/s7/src/main/resources/daffodil-built-in-catalog.xml (73%)
rename protocols/{src/main/dfdl/org/apache/plc4x/protocols/s7-protocol.dfdl.xsd => s7/src/main/resources/org/apache/plc4x/protocols/s7/protocol.dfdl.xsd} (50%)
create mode 100644 protocols/s7/src/main/resources/org/apache/plc4x/protocols/s7/protocol.scxml.xml
create mode 100644 protocols/s7/src/test/java/org/apache/plc4x/protocols/s7/ManualTest.java
copy protocols/{src/test/java/org/apache/plc4x/protocols/TpktProtocolTest.java => s7/src/test/java/org/apache/plc4x/protocols/s7/ProtocolTest.java} (77%)
create mode 100644 protocols/s7/src/test/resources/org/apache/plc4x/protocols/s7/protocol.tdml
delete mode 100644 protocols/src/main/dfdl/org/apache/plc4x/protocols/cotp-protocol.dfdl.xsd
delete mode 100644 protocols/src/test/resources/org/apache/plc4x/protocols/tpkt-protocol.tdml
copy protocols/{ => test-utils}/pom.xml (61%)
rename protocols/{src/test => test-utils/src/main}/java/org/apache/plc4x/protocols/AbstractProtocolTest.java (79%)
create mode 100644 sandbox/dynamic-driver-base/pom.xml
copy protocols/src/test/java/org/apache/plc4x/protocols/TpktProtocolTest.java => sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java (65%)
create mode 100644 sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseDaffodilAction.java
create mode 100644 sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BasePlc4xAction.java
create mode 100644 sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/ConnectAction.java
create mode 100644 sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/InitContextAction.java
create mode 100644 sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/ReceiveAction.java
create mode 100644 sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/ReceiveExtractVerifyAction.java
rename examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/MqttConfig.java => sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/ReceiveRequestAction.java (50%)
create mode 100644 sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/ReceiveResponseAction.java
create mode 100644 sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/SendAction.java
create mode 100644 sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/SendRequestAction.java
create mode 100644 sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/connection/DynamicDriverConnectionBase.java
create mode 100644 sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/utils/RequestRegistry.java
create mode 100644 sandbox/dynamic-driver-base/src/main/scala/org/apache/plc4x/sandbox/java/dynamic/utils/JDOMTemplateInfosetInputter.scala
copy {plc4j/utils/opm => sandbox/dynamic-driver-s7}/pom.xml (60%)
create mode 100644 sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/DynamicS7Driver.java
create mode 100644 sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/actions/S7DecodeArticleNumber.java
create mode 100644 sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/actions/S7DecodeReadResponseAction.java
copy examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcMemoryBlock.java => sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/actions/S7DecodeWriteResponseAction.java (62%)
create mode 100644 sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/connection/DynamicS7Connection.java
create mode 100644 sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/types/DataTransportErrorCode.java
create mode 100644 sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/types/DataTransportSize.java
create mode 100644 sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/types/MemoryArea.java
rename protocols/src/test/java/org/apache/plc4x/protocols/TpktProtocolTest.java => sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/types/S7ControllerType.java (74%)
copy {plc4j/protocols/s7/src/main/java/org/apache/plc4x/java/s7/netty/model => sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7}/types/TransportSize.java (97%)
copy {plc4j/protocols/s7/src/main/java/org/apache/plc4x/java/s7/model => sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/utils}/S7Field.java (88%)
create mode 100644 sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/utils/S7PlcFieldHandler.java
rename examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcMemoryBlock.java => sandbox/dynamic-driver-s7/src/main/java/org/apache/plc4x/sandbox/java/dynamic/s7/utils/S7TsapIdEncoder.java (54%)
create mode 100644 sandbox/dynamic-driver-s7/src/main/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver
create mode 100644 sandbox/plc4x-maven-plugin/pom.xml
create mode 100644 sandbox/plc4x-maven-plugin/src/it/settings.xml
create mode 100644 sandbox/plc4x-maven-plugin/src/it/simple-it/pom.xml
copy protocols/src/main/dfdl/org/apache/plc4x/protocols/tpkt-protocol.dfdl.xsd => sandbox/plc4x-maven-plugin/src/it/simple-it/src/main/resources/test/protocol.dfdl.xsd (50%)
copy plc4j/api/src/main/java/org/apache/plc4x/java/api/types/PlcResponseCode.java => sandbox/plc4x-maven-plugin/src/it/simple-it/verify.groovy (80%)
create mode 100644 sandbox/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/GenerateMojo.java
create mode 100644 sandbox/plc4x-maven-plugin/src/test/java/org/apache/plc4x/plugins/codegenerator/GenerateMojoTest.java
rename {integrations/apache-karaf/karaf-modbus-feature => sandbox/plc4x-maven-plugin/src/test/projects/simple-embedded-schema}/pom.xml (50%)
rename protocols/src/main/dfdl/org/apache/plc4x/protocols/tpkt-protocol.dfdl.xsd => sandbox/plc4x-maven-plugin/src/test/projects/simple-embedded-schema/src/main/resources/protocol.dfdl.xsd (50%)
copy plc4j/drivers/delta-v/pom.xml => sandbox/plc4x-maven-plugin/src/test/projects/simple-embedded-schema/src/main/resources/template.ftlh (54%)
copy {plc4j/drivers => sandbox}/pom.xml (57%)
rename integrations/apache-nifi/nifi-plc4x-processors/src/test/java/org/apache/plc4x/processors/plc4x4nifi/Plc4xSourceProcessorTest.java => src/main/script/prerequisite-check.groovy (58%)
delete mode 100644 src/site/asciidoc/community/getting-involved.adoc
rename src/site/asciidoc/{community => developers}/conferences.adoc (72%)
create mode 100644 src/site/asciidoc/developers/decisions.adoc
create mode 100644 src/site/asciidoc/developers/maturity.adoc
create mode 100644 src/site/asciidoc/developers/preparing.adoc
create mode 100644 src/site/asciidoc/developers/team.adoc
delete mode 100644 src/site/asciidoc/incubation-proposal.adoc
create mode 100644 src/site/resources/images/PLC4X_rollup_83x237cm-final.pdf
rename src/site/resources/{img => images}/apache_brooklyn_logo.png (100%)
rename src/site/resources/{img => images}/apache_camel_logo.png (100%)
rename src/site/resources/{img => images}/apache_edgent_logo.png (100%)
rename src/site/resources/{img => images}/apache_kafka_logo.png (100%)
create mode 100644 src/site/resources/images/apache_logo.png
rename src/site/resources/{img => images}/apache_mynewt_logo.png (100%)
rename src/site/resources/{img => images}/apache_nifi_logo.svg (100%)
rename src/site/resources/{img => images}/apache_plc4x_logo.png (100%)
rename src/site/resources/{img => images}/community-contribute-fork.png (100%)
create mode 100644 src/site/resources/images/contributing-github-create-pull-request.png
create mode 100644 src/site/resources/images/contributing-github-fork.png
rename src/site/resources/{img => images}/iot-lab.jpg (100%)
rename src/site/resources/{img => images}/neo4j-intellij-database-connections-view.png (100%)
rename src/site/resources/{img => images}/neo4j-intellij-query-results.png (100%)
rename src/site/resources/{img => images}/neo4j-intellij-settings.png (100%)
rename src/site/resources/{img => images}/neo4j-web-console.png (100%)
rename src/site/resources/{img => images}/plc4x-vpn-beckhoff-route-1.png (100%)
rename src/site/resources/{img => images}/plc4x-vpn-beckhoff-route-2.png (100%)
rename src/site/resources/{img => images}/plc4x-vpn-beckhoff-route-3.png (100%)
rename src/site/resources/{img => images}/plc4x-vpn-beckhoff.jpg (100%)
rename src/site/resources/{img => images}/plc4x-vpn-client-download.png (100%)
rename src/site/resources/{img => images}/plc4x-vpn-fatek.jpg (100%)
rename src/site/resources/{img => images}/plc4x-vpn-siemens-hmi.jpg (100%)
rename src/site/resources/{img => images}/plc4x-vpn-siemens-s7.jpg (100%)
rename src/site/resources/{img => images}/plc4x-vpn-wago.jpg (100%)
create mode 100644 src/site/resources/images/release-git-diff-next-development-iteration.png
create mode 100644 src/site/resources/images/release-git-diff-prepare-release.png
create mode 100644 src/site/resources/images/release-git-history.png
create mode 100644 src/site/resources/images/team/cdutz.png
create mode 100644 src/site/resources/images/team/jfeinauer.jpg
create mode 100644 src/site/resources/images/team/sruehl.jpg
create mode 100644 src/site/resources/images/team/tmitsch.png
create mode 100644 src/site/resources/plc4x-doap.rdf
create mode 100644 src/site/resources/plc4x-pmc.rdf
create mode 100644 tools/README.md
create mode 100644 tools/clean-site.sh
copy {plc4j/drivers/delta-v => tools}/pom.xml (78%)
create mode 100644 tools/thrift/pom.xml
copy plc4j/drivers/delta-v/pom.xml => tools/thrift/src/assembly/compiler.xml (53%)
rename plc4j/drivers/delta-v/pom.xml => tools/thrift/src/assembly/cpp.xml (54%)
create mode 100644 tools/thrift/src/assembly/python.xml
[plc4x] 01/01: - Merged release 0.4.0 to master
Posted by cd...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
cdutz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/plc4x.git
commit 6e7f5055370816313a32c112d74b03b2dc49b7cc
Merge: 295b71f 10739fd
Author: Christofer Dutz <ch...@c-ware.de>
AuthorDate: Sun May 26 16:23:57 2019 +0200
- Merged release 0.4.0 to master
.gitignore | 13 +-
.mvn/wrapper/MavenWrapperDownloader.java | 57 +-
.mvn/wrapper/maven-wrapper.properties | 5 +-
.vscode/settings.json | 8 +
DISCLAIMER | 7 -
Jenkinsfile | 32 +-
LICENSE | 9 +-
NOTICE | 3 +
README | 114 +-
RELEASE_NOTES | 30 +
jenkins.pom | 2 +-
.../300ppi/PLC4X logo without mascot@300x.png | Bin 0 -> 18418 bytes
media/logos/300ppi/PLC4X.png | Bin 0 -> 87342 bytes
media/logos/300ppi/logo PLC4X black line@300x.png | Bin 0 -> 50768 bytes
media/logos/300ppi/logo PLC4X color CMYK@300x.png | Bin 0 -> 87342 bytes
media/logos/300ppi/logo PLC4X on dark bg@300x.png | Bin 0 -> 86925 bytes
media/logos/300ppi/logo PLC4X white line@300x.png | Bin 0 -> 46417 bytes
.../mascot color with apache feather@300x.png | Bin 0 -> 127847 bytes
.../300ppi/mascot color without feather@300x.png | Bin 0 -> 91523 bytes
media/logos/PDF/PLC4X logo without mascot.pdf | Bin 0 -> 66597 bytes
media/logos/PDF/logo PLC4X black line.pdf | Bin 0 -> 123655 bytes
media/logos/PDF/logo PLC4X color CMYK@300x.pdf | Bin 0 -> 252702 bytes
media/logos/PDF/logo PLC4X on dark bg.pdf | Bin 0 -> 252970 bytes
media/logos/PDF/logo PLC4X white line.pdf | Bin 0 -> 123558 bytes
.../logos/PDF/mascot color with apache feather.pdf | Bin 0 -> 271570 bytes
media/logos/PDF/mascot color without feather.pdf | Bin 0 -> 249178 bytes
media/logos/SVG/PLC4X logo without mascot.svg | 59 +
media/logos/SVG/logo PLC4X black line.svg | 1598 ++++++++++
media/logos/SVG/logo PLC4X color CMYK@300x.svg | 1492 +++++++++
media/logos/SVG/logo PLC4X on dark bg.svg | 1492 +++++++++
media/logos/SVG/logo PLC4X white line.svg | 1598 ++++++++++
.../logos/SVG/mascot color with apache feather.svg | 2462 ++++++++++++++
media/logos/SVG/mascot color without feather.svg | 1403 ++++++++
mvnw | 67 +-
mvnw.cmd | 25 +-
.../delta-v/pom.xml => plc4cpp/CMakeLists.txt | 31 +-
plc4cpp/README.md | 14 +-
plc4cpp/api/CMakeLists.txt | 76 +
plc4cpp/api/pom.xml | 106 +-
plc4cpp/api/src/assembly/cpp.xml | 47 +
plc4cpp/api/src/main/cmake/CMakeLists.txt | 76 -
.../PlcUsernamePasswordAuthentication.cpp | 14 +-
.../PlcUsernamePasswordAuthentication.h | 4 +-
.../cpp/api/exceptions/PlcConnectionException.h | 6 +-
.../plc4x/cpp/api/exceptions/PlcException.cpp | 6 +-
.../apache/plc4x/cpp/api/exceptions/PlcException.h | 6 +-
.../cpp/api/exceptions/PlcFieldRangeException.cpp | 4 +-
.../PlcIncompatibleDatatypeException.cpp | 4 +-
.../exceptions/PlcIncompatibleDatatypeException.h | 2 +-
.../api/exceptions/PlcInvalidFieldException.cpp | 20 +-
.../cpp/api/exceptions/PlcInvalidFieldException.h | 8 +-
.../plc4x/cpp/api/exceptions/PlcIoException.h | 6 +-
.../api/exceptions/PlcNotImplementedException.h | 2 +-
.../cpp/api/exceptions/PlcProtocolException.h | 6 +-
.../PlcProtocolPayloadTooBigException.cpp | 20 +-
.../exceptions/PlcProtocolPayloadTooBigException.h | 10 +-
.../cpp/api/exceptions/PlcRuntimeException.cpp | 6 +-
.../plc4x/cpp/api/exceptions/PlcRuntimeException.h | 6 +-
.../cpp/api/exceptions/PlcTimeoutException.cpp | 8 +-
.../plc4x/cpp/api/exceptions/PlcTimeoutException.h | 4 +-
.../exceptions/PlcUnsupportedDataTypeException.h | 6 +-
.../exceptions/PlcUnsupportedOperationException.h | 6 +-
.../plc4x/cpp/api/messages/PlcFieldResponse.h | 4 +-
.../plc4x/cpp/api/messages/PlcReadRequest.cpp | 4 +-
.../apache/plc4x/cpp/api/messages/PlcReadRequest.h | 2 +-
.../cpp/api/messages/PlcReadRequestBuilder.cpp | 0
.../plc4x/cpp/api/messages/PlcReadRequestBuilder.h | 2 +-
.../plc4x/cpp/api/messages/PlcReadResponse.h | 144 +-
.../PlcDriver.cpp} | 8 +-
.../main/cpp/org/apache/plc4x/cpp/spi/PlcDriver.h | 85 +
.../pom.xml => plc4cpp/examples/CMakeLists.txt | 23 +-
plc4cpp/{api => examples}/pom.xml | 37 +-
.../pom.xml => plc4cpp/integrations/CMakeLists.txt | 24 +-
.../integrations/apache-mynewt/CMakeLists.txt | 23 +-
.../integrations}/apache-mynewt/pom.xml | 8 +-
.../integrations/edgex-foundry/CMakeLists.txt | 23 +-
.../integrations/edgex-foundry}/pom.xml | 15 +-
{integrations => plc4cpp/integrations}/pom.xml | 16 +-
plc4cpp/libs/boost/pom.xml | 158 +
plc4cpp/libs/boost/src/assembly/cpp-windows.xml | 47 +
.../libs/boost/src/assembly/cpp.xml | 37 +-
plc4cpp/libs/pom.xml | 124 +-
plc4cpp/pom.xml | 204 +-
.../pom.xml => plc4cpp/protocols/CMakeLists.txt | 23 +-
.../protocols/driver-bases/CMakeLists.txt | 23 +-
plc4cpp/protocols/driver-bases/base/CMakeLists.txt | 65 +
plc4cpp/protocols/driver-bases/base/pom.xml | 149 +
.../driver-bases/base/src/assembly/cpp.xml | 47 +
.../cpp/base/connection/AbstractPlcConnection.cpp} | 28 +-
.../cpp/base/connection/AbstractPlcConnection.h | 79 +
.../plc4x/cpp/base/connection/ChannelFactory.cpp} | 11 +-
.../plc4x/cpp/base/connection/ChannelFactory.h} | 34 +-
.../cpp/base/connection/DefaultPlcFieldHandler.cpp | 111 +
.../cpp/base/connection/DefaultPlcFieldHandler.h | 96 +
.../plc4x/cpp/base/connection/PlcFieldHandler.cpp} | 9 +-
.../plc4x/cpp/base/connection/PlcFieldHandler.h | 99 +
.../apache/plc4x/cpp/base/events/ConnectEvent.cpp} | 9 +-
.../apache/plc4x/cpp/base/events/ConnectEvent.h} | 18 +-
.../plc4x/cpp/base/events/ConnectedEvent.cpp} | 9 +-
.../apache/plc4x/cpp/base/events/ConnectedEvent.h} | 17 +-
.../cpp/base/messages/DefaultPlcReadRequest.cpp | 122 +
.../cpp/base/messages/DefaultPlcReadRequest.h | 81 +
.../cpp/base/messages/DefaultPlcWriteRequest.cpp | 120 +
.../cpp/base/messages/DefaultPlcWriteRequest.h | 81 +
.../cpp/base/messages/InternalPlcFieldRequest.cpp} | 10 +-
.../cpp/base/messages/InternalPlcFieldRequest.h} | 29 +-
.../base/messages/InternalPlcFieldResponse.cpp} | 7 +-
.../cpp/base/messages/InternalPlcFieldResponse.h} | 23 +-
.../messages/InternalPlcProprietaryRequest.cpp} | 6 +-
.../base/messages/InternalPlcProprietaryRequest.h} | 31 +-
.../messages/InternalPlcProprietaryResponse.cpp} | 6 +-
.../messages/InternalPlcProprietaryResponse.h} | 31 +-
.../cpp/base/messages/InternalPlcReadRequest.cpp} | 7 +-
.../cpp/base/messages/InternalPlcReadRequest.h} | 33 +-
.../cpp/base/messages/InternalPlcRequest.cpp} | 7 +-
.../plc4x/cpp/base/messages/InternalPlcRequest.h} | 21 +-
.../cpp/base/messages/InternalPlcResponse.cpp} | 7 +-
.../plc4x/cpp/base/messages/InternalPlcResponse.h} | 21 +-
.../cpp/base/messages/InternalPlcWriteRequest.cpp} | 7 +-
.../cpp/base/messages/InternalPlcWriteRequest.h} | 43 +-
.../cpp/base/messages/PlcProprietaryRequest.cpp} | 7 +-
.../cpp/base/messages/PlcProprietaryRequest.h} | 29 +-
.../cpp/base/messages/PlcProprietaryResponse.cpp} | 6 +-
.../cpp/base/messages/PlcProprietaryResponse.h} | 28 +-
.../apache/plc4x/cpp/base/messages/PlcReader.cpp} | 7 +-
.../apache/plc4x/cpp/base/messages/PlcReader.h} | 17 +-
.../apache/plc4x/cpp/base/messages/PlcWriter.cpp} | 7 +-
.../apache/plc4x/cpp/base/messages/PlcWriter.h} | 34 +-
.../base/messages/items/BaseDefaultFieldItem.cpp} | 11 +-
.../cpp/base/messages/items/BaseDefaultFieldItem.h | 136 +
.../messages/items/DefaultBigDecimalFieldItem.cpp | 196 ++
.../messages/items/DefaultBigDecimalFieldItem.h | 83 +
.../messages/items/DefaultBigIntegerFieldItem.cpp | 201 ++
.../messages/items/DefaultBigIntegerFieldItem.h | 84 +
.../messages/items/DefaultBooleanFieldItem.cpp | 196 ++
.../base/messages/items/DefaultBooleanFieldItem.h | 80 +
.../messages/items/DefaultByteArrayFieldItem.cpp | 196 ++
.../messages/items/DefaultByteArrayFieldItem.h | 81 +
.../base/messages/items/DefaultByteFieldItem.cpp | 196 ++
.../cpp/base/messages/items/DefaultByteFieldItem.h | 81 +
.../base/messages/items/DefaultDoubleFieldItem.cpp | 196 ++
.../base/messages/items/DefaultDoubleFieldItem.h | 81 +
.../base/messages/items/DefaultFloatFieldItem.cpp | 196 ++
.../base/messages/items/DefaultFloatFieldItem.h | 81 +
.../messages/items/DefaultIntegerFieldItem.cpp | 196 ++
.../base/messages/items/DefaultIntegerFieldItem.h | 81 +
.../messages/items/DefaultLocalDateFieldItem.cpp | 196 ++
.../messages/items/DefaultLocalDateFieldItem.h | 81 +
.../items/DefaultLocalDateTimeFieldItem.cpp | 95 +
.../messages/items/DefaultLocalDateTimeFieldItem.h | 71 +
.../messages/items/DefaultLocalTimeFieldItem.cpp | 95 +
.../messages/items/DefaultLocalTimeFieldItem.h | 71 +
.../base/messages/items/DefaultLongFieldItem.cpp | 196 ++
.../cpp/base/messages/items/DefaultLongFieldItem.h | 82 +
.../base/messages/items/DefaultShortFieldItem.cpp | 196 ++
.../base/messages/items/DefaultShortFieldItem.h | 82 +
.../messages/items/DefaultStringFieldItem.cpp} | 32 +-
.../base/messages/items/DefaultStringFieldItem.h} | 53 +-
.../protocols/driver-bases}/pom.xml | 12 +-
{plc4c => plc4cpp/protocols}/pom.xml | 14 +-
.../pom.xml => plc4cpp/utils/CMakeLists.txt | 23 +-
.../pom.xml => plc4cpp/utils/logger/CMakeLists.txt | 36 +-
plc4cpp/utils/logger/pom.xml | 150 +
plc4cpp/utils/logger/src/assembly/cpp.xml | 47 +
.../org/apache/plc4x/cpp/utils/logger/BLogger.cpp | 475 +++
.../org/apache/plc4x/cpp/utils/logger/BLogger.h | 157 +
.../org/apache/plc4x/cpp/utils/logger/DatDmp.cpp | 143 +
.../cpp/org/apache/plc4x/cpp/utils/logger/DatDmp.h | 88 +
.../org/apache/plc4x/cpp/utils/logger/DbgTrace.cpp | 64 +-
.../org/apache/plc4x/cpp/utils/logger/DbgTrace.h | 54 +
.../plc4x/cpp/utils/logger/ErrorCategory.cpp | 71 +
.../apache/plc4x/cpp/utils/logger/ErrorCategory.h | 125 +
.../plc4x/cpp/utils/logger/ErrorInfoException.cpp | 171 +
.../plc4x/cpp/utils/logger/ErrorInfoException.h | 83 +
.../org/apache/plc4x/cpp/utils/logger/ExLog.cpp | 143 +
.../cpp/org/apache/plc4x/cpp/utils/logger/ExLog.h | 71 +
{plc4j/drivers/delta-v => plc4cpp/utils}/pom.xml | 19 +-
plc4j/api/pom.xml | 4 +-
.../org/apache/plc4x/java/api/PlcConnection.java | 21 +
.../PlcUnsupportedProtocolException.java | 21 +-
.../org/apache/plc4x/java/api/model/PlcField.java | 16 +
.../plc4x/java/api/types/PlcResponseCode.java | 1 +
plc4j/drivers/ads/pom.xml | 16 +-
.../connection/AdsAbstractPlcConnectionTest.java | 13 +-
.../ads/connection/AdsTcpPlcConnectionTests.java | 19 +-
plc4j/drivers/ethernet-ip/pom.xml | 10 +-
plc4j/drivers/modbus/pom.xml | 14 +-
plc4j/drivers/{simulated => opcua}/pom.xml | 51 +-
.../apache/plc4x/java/opcua/OpcuaPlcDriver.java | 94 +
.../opcua/connection/BaseOpcuaPlcConnection.java | 95 +
.../opcua/connection/OpcuaConnectionFactory.java | 52 +-
.../opcua/connection/OpcuaTcpPlcConnection.java | 464 +++
.../plc4x/java/opcua/protocol/OpcuaField.java | 118 +
.../java/opcua/protocol/OpcuaPlcFieldHandler.java | 151 +
.../opcua/protocol/OpcuaSubsriptionHandle.java | 81 +
.../java/opcua/protocol/model/OpcuaDataTypes.java | 63 +-
.../opcua/protocol/model/OpcuaIdentifierType.java | 50 +-
.../services/org.apache.plc4x.java.spi.PlcDriver | 2 +-
.../apache/plc4x/java/opcua/ManualPLC4XOpcua.java | 145 +
.../plc4x/java/opcua/OpcuaPlcDriverTest.java | 67 +
.../org/apache/plc4x/java/opcua/UtilsTest.java | 35 +-
.../connection/OpcuaTcpPlcConnectionTest.java | 23 +-
.../plc4x/java/opcua/protocol/OpcuaFieldTest.java | 51 +
.../opcua/protocol/OpcuaPlcFieldHandlerTest.java | 23 +-
.../protocol/OpcuaSubscriptionHandleTest.java | 23 +-
plc4j/drivers/pom.xml | 3 +-
plc4j/drivers/s7/pom.xml | 24 +-
.../plc4x/java/s7/connection/S7PlcConnection.java | 10 +-
.../java/s7/connection/S7PlcConnectionIT.java | 2 +
.../java/s7/connection/S7PlcConnectionTests.java | 15 +
plc4j/drivers/simulated/pom.xml | 6 +-
{examples => plc4j/examples}/dummy-driver/pom.xml | 14 +-
.../java/examples/dummydriver/DummyDriver.java | 4 +-
.../dummydriver/connection/DummyConnection.java | 0
.../examples/dummydriver/model/DummyField.java | 0
.../examples/dummydriver/netty/DummyProtocol.java | 0
.../services/org.apache.plc4x.java.spi.PlcDriver | 0
.../examples}/hello-cloud-azure/pom.xml | 14 +-
.../java/examples/cloud/azure/CliOptions.java | 0
.../cloud/azure/S7PlcToAzureIoTHubSample.java | 0
.../examples}/hello-cloud-google/README.md | 0
.../examples}/hello-cloud-google/pom.xml | 12 +-
.../java/examples/cloud/google/CliOptions.java | 0
.../cloud/google/S7PlcToGoogleIoTCoreSample.java | 0
.../src/main/resources/logback.xml | 0
.../hello-connectivity-kafka/kafka-connector.yml | 0
.../examples}/hello-connectivity-kafka/pom.xml | 18 +-
.../examples}/hello-connectivity-kafka/server.sh | 0
.../connectivity/kafka/KafkaConnector.java | 0
.../connectivity/kafka/model/Configuration.java | 0
.../connectivity/kafka/model/KafkaConfig.java | 0
.../connectivity/kafka/model/PlcConfig.java | 0
.../connectivity/kafka/model/PlcFieldConfig.java | 0
.../connectivity/kafka/model/PlcMemoryBlock.java | 0
.../src/main/resources/logback.xml | 0
.../hello-connectivity-mqtt/mqtt-connector.yml | 0
.../examples}/hello-connectivity-mqtt/pom.xml | 21 +-
.../examples/connectivity/mqtt/MqttConnector.java | 12 +-
.../connectivity/mqtt/model/Configuration.java | 0
.../connectivity/mqtt/model/MqttConfig.java | 0
.../connectivity/mqtt/model/PlcConfig.java | 0
.../connectivity/mqtt/model/PlcFieldConfig.java | 0
.../connectivity/mqtt/model/PlcMemoryBlock.java | 0
.../src/main/resources/logback.xml | 0
.../examples}/hello-integration-edgent/pom.xml | 14 +-
.../examples/integration/edgent/CliOptions.java | 0
.../examples/integration/edgent/PlcLogger.java | 0
.../src/main/resources/logback.xml | 0
{examples => plc4j/examples}/hello-opm/pom.xml | 16 +-
.../plc4x/java/examples/helloopm/HelloOpm.java | 0
.../hello-opm/src/main/resources/logback.xml | 0
.../hello-storage-elasticsearch/README.adoc | 0
.../examples}/hello-storage-elasticsearch/pom.xml | 34 +-
.../elasticsearch/ElasticsearchStorage.java | 5 +-
.../src/main/resources/log4j2.xml | 0
.../src/main/resources/logback.xml | 0
plc4j/examples/hello-webapp/client/pom.xml | 136 +
.../client/src/main/royale/HelloPLC4X.mxml | 104 +
.../client/src/main/royale/service/RobotService.as | 92 +
plc4j/examples/hello-webapp/pom.xml | 78 +
.../hello-webapp/service}/pom.xml | 62 +-
.../robot/controllers/RobotController.java | 105 +
plc4j/examples/hello-webapp/webapp/pom.xml | 148 +
.../apache/plc4x/examples/robot/Application.java | 15 +-
.../src/main/resources/application.properties | 10 +-
.../examples}/hello-world-plc4x/pom.xml | 14 +-
.../plc4x/java/examples/helloplc4x/CliOptions.java | 0
.../plc4x/java/examples/helloplc4x/HelloPlc4x.java | 0
.../src/main/resources/logback.xml | 0
{examples => plc4j/examples}/pom.xml | 63 +-
.../integrations}/apache-calcite/pom.xml | 14 +-
.../main/java/org/apache/plc4x/Plc4xBaseTable.java | 0
.../main/java/org/apache/plc4x/Plc4xSchema.java | 6 +-
.../java/org/apache/plc4x/Plc4xSchemaFactory.java | 12 +-
.../java/org/apache/plc4x/Plc4xStreamTable.java | 0
.../src/main/java/org/apache/plc4x/Plc4xTable.java | 0
.../java/org/apache/plc4x/DriverManagerTest.java | 3 +-
.../java/org/apache/plc4x/Plc4XBaseTableTest.java | 4 +-
.../org/apache/plc4x/Plc4xSchemaFactoryTest.java | 2 -
.../apache-calcite/src/test/resources/example.yml | 0
.../apache-calcite}/src/test/resources/logback.xml | 0
.../apache-calcite/src/test/resources/model.json | 0
.../integrations}/apache-camel/pom.xml | 23 +-
.../apache-camel/src/main/docs/PLC4X.adoc | 0
.../java/org/apache/plc4x/camel/Constants.java | 0
.../org/apache/plc4x/camel/Plc4XComponent.java | 0
.../java/org/apache/plc4x/camel/Plc4XConsumer.java | 0
.../java/org/apache/plc4x/camel/Plc4XEndpoint.java | 0
.../apache/plc4x/camel/Plc4XPollingConsumer.java | 0
.../java/org/apache/plc4x/camel/Plc4XProducer.java | 0
.../services/org/apache/camel/component/plc4x | 0
.../java/org/apache/plc4x/camel/ConstantsTest.java | 0
.../java/org/apache/plc4x/camel/ManualTest.java | 0
.../java/org/apache/plc4x/camel/MockDriver.java | 0
.../org/apache/plc4x/camel/Plc4XComponentTest.java | 0
.../org/apache/plc4x/camel/Plc4XConsumerTest.java | 0
.../org/apache/plc4x/camel/Plc4XEndpointTest.java | 0
.../plc4x/camel/Plc4XPollingConsumerTest.java | 0
.../org/apache/plc4x/camel/Plc4XProducerTest.java | 8 +-
.../services/org.apache.plc4x.java.spi.PlcDriver | 0
.../src/test/resources/log4j2.properties | 0
.../apache-camel}/src/test/resources/logback.xml | 0
.../integrations}/apache-edgent/pom.xml | 17 +-
.../apache/plc4x/edgent/PlcConnectionAdapter.java | 0
.../java/org/apache/plc4x/edgent/PlcFunctions.java | 0
.../java/org/apache/plc4x/edgent/package-info.java | 0
.../plc4x/edgent/PlcConnectionAdapterTest.java | 0
.../org/apache/plc4x/edgent/PlcFunctionsTest.java | 0
.../apache/plc4x/edgent/mock/MockConnection.java | 0
.../org/apache/plc4x/edgent/mock/MockDriver.java | 4 +-
.../org/apache/plc4x/edgent/mock/MockField.java | 0
.../apache/plc4x/edgent/mock/MockFieldHandler.java | 0
.../apache/plc4x/edgent/mock/MockFieldItem.java | 0
.../services/org.apache.plc4x.java.spi.PlcDriver | 0
plc4j/integrations/apache-kafka/README.md | 63 +
.../apache-kafka/config/sink.properties | 0
.../apache-kafka/config/source.properties | 0
.../integrations}/apache-kafka/pom.xml | 9 +-
.../org/apache/plc4x/kafka/Plc4xSinkConnector.java | 5 +-
.../java/org/apache/plc4x/kafka/Plc4xSinkTask.java | 0
.../apache/plc4x/kafka/Plc4xSourceConnector.java | 3 +-
.../org/apache/plc4x/kafka/Plc4xSourceTask.java | 0
.../org/apache/plc4x/kafka/util/VersionUtil.java | 0
.../apache-karaf/karaf-ads-feature/pom.xml | 19 +-
.../apache-karaf/karaf-demo-server/pom.xml | 50 +-
.../apache-karaf/karaf-ethernet-ip-feature/pom.xml | 19 +-
.../apache-karaf/karaf-modbus-feature/pom.xml | 19 +-
.../apache-karaf/karaf-s7-feature/pom.xml | 19 +-
.../apache-karaf/karaf-simulated-feature/pom.xml | 19 +-
.../integrations}/apache-karaf/pom.xml | 18 +-
.../nifi-plc4x-nar/false-positives.xml} | 26 +-
.../apache-nifi/nifi-plc4x-nar/pom.xml | 53 +-
.../apache-nifi/nifi-plc4x-processors/pom.xml | 12 +-
.../org/apache/plc4x/nifi/BasePlc4xProcessor.java | 0
.../org/apache/plc4x/nifi/Plc4xSinkProcessor.java | 0
.../apache/plc4x/nifi/Plc4xSourceProcessor.java | 0
.../services/org.apache.nifi.processor.Processor | 0
.../plc4x4nifi/Plc4xSinkProcessorTest.java | 0
.../plc4x4nifi/Plc4xSourceProcessorTest.java | 0
.../integrations}/apache-nifi/pom.xml | 32 +-
plc4j/{drivers => integrations}/pom.xml | 24 +-
plc4j/pom.xml | 298 +-
plc4j/protocols/ads/pom.xml | 8 +-
plc4j/protocols/ads/src/site/asciidoc/index.adoc | 2 +-
.../ads/api/commands/CommandFactoryMethodTest.java | 7 +-
.../ads/api/generic/GenericFactoryMethodTest.java | 7 +-
.../ads/api/serial/SerialFactoryMethodTest.java | 7 +-
.../java/ads/api/tcp/TcpFactoryMethodTest.java | 7 +-
.../java/ads/protocol/Plc4x2AdsProtocolTest.java | 3 +
plc4j/protocols/benchmarks/pom.xml | 4 +-
plc4j/protocols/delta-v/pom.xml | 19 +-
.../java/org/apache/plc4x/java/deltav/PoCES.java | 5 +-
plc4j/protocols/driver-bases/base/pom.xml | 4 +-
.../base/connection/AbstractPlcConnection.java | 8 +
.../plc4x/java/base/connection/ChannelFactory.java | 3 +
.../java/base/connection/NettyPlcConnection.java | 20 +
.../java/base/messages/DefaultPlcWriteRequest.java | 4 +-
.../base/connection/NettyPlcConnectionTest.java | 16 +-
plc4j/protocols/driver-bases/pom.xml | 2 +-
plc4j/protocols/driver-bases/raw-socket/pom.xml | 6 +-
.../base/connection/RawSocketChannelFactory.java | 26 +
plc4j/protocols/driver-bases/serial/pom.xml | 6 +-
.../java/base/connection/SerialChannelFactory.java | 5 +
plc4j/protocols/driver-bases/tcp/pom.xml | 6 +-
.../base/connection/TcpSocketChannelFactory.java | 19 +
plc4j/protocols/driver-bases/test/pom.xml | 6 +-
.../java/base/connection/TestChannelFactory.java | 5 +
.../apache/plc4x/java/mock/PlcMockConnection.java | 7 +
plc4j/protocols/ethernet-ip/pom.xml | 6 +-
.../ethernetip/netty/Plc4XEtherNetIpProtocol.java | 2 +-
.../{img => images}/WAGO_enip_exporer.png | Bin
plc4j/protocols/iso-on-tcp/pom.xml | 8 +-
plc4j/protocols/iso-tp/pom.xml | 10 +-
plc4j/protocols/modbus/pom.xml | 8 +-
.../java/modbus/netty/Plc4XModbusProtocolTest.java | 17 -
plc4j/protocols/pom.xml | 2 +-
plc4j/protocols/s7/pom.xml | 10 +-
.../org/apache/plc4x/java/s7/model/S7Field.java | 31 +
.../org/apache/plc4x/java/s7/netty/S7Protocol.java | 4 +-
.../java/s7/netty/model/types/TransportSize.java | 4 +-
plc4j/protocols/s7/src/site/asciidoc/index.adoc | 2 +-
.../apache/plc4x/java/s7/model/S7FieldTests.java | 8 +
.../asciidoc/developers/implementing-drivers.adoc | 4 +-
plc4j/src/site/asciidoc/index.adoc | 2 +-
plc4j/src/site/asciidoc/users/gettingstarted.adoc | 178 ++
plc4j/utils/connection-pool/pom.xml | 4 +-
.../connectionpool/PooledPlcDriverManagerTest.java | 7 +
plc4j/utils/interop/pom.xml | 217 ++
plc4j/utils/interop/src/assembly/assembly.xml | 41 +
.../java/org/apache/plc4x/interop/impl/Client.java | 60 +
.../org/apache/plc4x/interop/impl/Handler.java | 160 +
.../java/org/apache/plc4x/interop/impl/Server.java | 91 +
plc4j/utils/opm/pom.xml | 10 +-
plc4j/utils/pom.xml | 11 +-
plc4j/utils/raw-sockets/pom.xml | 4 +-
plc4j/utils/scraper/pom.xml | 56 +-
.../org/apache/plc4x/java/scraper/ScrapeJob.java | 35 +-
.../scraper/{ScrapeJob.java => ScrapeJobImpl.java} | 27 +-
.../org/apache/plc4x/java/scraper/Scraper.java | 151 +-
.../scraper/{Scraper.java => ScraperImpl.java} | 52 +-
.../org/apache/plc4x/java/scraper/ScraperTask.java | 170 +-
.../{ScraperTask.java => ScraperTaskImpl.java} | 32 +-
.../java/scraper/config/JobConfiguration.java | 47 +-
...onfiguration.java => JobConfigurationImpl.java} | 21 +-
...ilder.java => JobConfigurationImplBuilder.java} | 16 +-
.../java/scraper/config/ScraperConfiguration.java | 47 +-
.../config/ScraperConfigurationBuilder.java | 12 +-
.../TriggeredJobConfiguration.java} | 29 +-
.../TriggeredJobConfigurationBuilder.java} | 34 +-
.../TriggeredScraperConfiguration.java} | 62 +-
.../TriggeredScraperConfigurationBuilder.java} | 18 +-
.../ScraperConfigurationException.java | 2 +-
.../java/scraper/exception/ScraperException.java} | 31 +-
.../triggeredscraper/TriggeredScrapeJobImpl.java | 73 +
.../TriggeredScraperImpl.java} | 91 +-
.../triggeredscraper/TriggeredScraperTask.java | 225 ++
.../triggerhandler/TriggerConfiguration.java | 412 +++
.../triggerhandler/TriggerHandler.java | 131 +
.../java/scraper/ScraperConfigurationTest.java | 10 +-
.../apache/plc4x/java/scraper/ScraperRunner.java | 5 +-
.../apache/plc4x/java/scraper/ScraperTaskTest.java | 8 +-
.../org/apache/plc4x/java/scraper/ScraperTest.java | 18 +-
...aperRunner.java => TriggeredScraperRunner.java} | 19 +-
.../java/scraper/TriggeredScraperRunnerModbus.java | 60 +
.../config/ScraperConfigurationBuilderTest.java | 13 +-
.../triggerhandler/TriggerConfigurationTest.java | 118 +
.../test/resources/example_triggered_scraper.yml | 40 +-
.../resources/example_triggered_scraper_modbus.yml | 14 +-
plc4j/utils/test-utils/pom.xml | 2 +-
plc4net/.gitignore | 344 ++
plc4net/api/PlcDriverManager.cs | 104 +
.../delta-v/pom.xml => plc4net/api/api.csproj | 24 +-
plc4net/api/api/IPlcConnection.cs | 89 +
plc4net/api/api/IPlcDriver.cs | 57 +
.../api/api/authentication/IPlcAuthentication.cs | 21 +-
.../PlcUsernamePasswordAuthentication.cs | 48 +
.../api/api/metadata/IPlcConnectionMetadata.cs | 38 +-
.../api/exceptions/PlcConnectionException.cs | 37 +-
.../api/exceptions/PlcException.cs | 39 +-
.../api/exceptions/PlcInvalidFieldException.cs | 33 +-
plc4net/api/messages/IPlcFieldRequest.cs | 52 +
plc4net/api/messages/IPlcFieldResponse.cs | 49 +
.../api/messages/IPlcMessage.cs | 21 +-
.../api/messages/IPlcReadRequest.cs | 21 +-
.../api/messages/IPlcReadRequestBuilder.cs | 34 +-
.../api/messages/IPlcReadResponse.cs | 19 +-
.../api/messages/IPlcRequest.cs | 23 +-
.../api/messages/IPlcRequestBuilder.cs | 23 +-
.../api/messages/IPlcResponse.cs | 28 +-
.../api/messages/IPlcSubscriptionEventArgs.cs | 30 +-
.../api/messages/IPlcSubscriptionRequest.cs | 19 +-
.../api/messages/IPlcSubscriptionRequestBuilder.cs | 54 +
.../api/messages/IPlcSubscriptionResponse.cs | 33 +-
.../api/messages/IPlcUnsubscriptionRequest.cs | 21 +-
.../messages/IPlcUnsubscriptionRequestBuilder.cs | 45 +
.../api/messages/IPlcUnsubscriptionResponse.cs | 21 +-
.../api/messages/IPlcWriteRequest.cs | 21 +-
plc4net/api/messages/IPlcWriteRequestBuilder.cs | 134 +
plc4net/api/model/IPlcField.cs | 39 +
.../api/model/IPlcSubscriptionHandle.cs | 22 +-
plc4net/api/pom.xml | 72 +
.../api/types/PlcResponseCode.cs | 24 +-
.../plc4net.driver/plc4net.driver.csproj | 26 +-
plc4net/plc4net.driver/pom.xml | 68 +
plc4net/plc4net.sln | 44 +
{plc4j/drivers => plc4net}/pom.xml | 24 +-
plc4py/README.md | 58 +
plc4py/pom.xml | 219 ++
plc4py/setup.py | 67 +
plc4py/src/assembly/python.xml | 47 +
plc4py/src/main/python/__init__.py | 26 +
plc4py/src/main/python/org/__init__.py | 17 +
plc4py/src/main/python/org/apache/__init__.py | 17 +
.../main/python/org/apache/plc4x/InteropClient.py | 45 +
.../main/python/org/apache/plc4x/PlcConnection.py | 75 +
.../python/org/apache/plc4x/PlcDriverManager.py | 79 +
.../src/main/python/org/apache/plc4x/__init__.py | 17 +
plc4py/src/main/resources/lib/log4j2.xml | 32 +
plc4py/src/test/python/__init__.py | 26 +
plc4py/src/test/python/org/__init__.py | 26 +
plc4py/src/test/python/org/apache/__init__.py | 26 +
.../src/test/python/org/apache/plc4x/__init__.py | 17 +
.../org/apache/plc4x/test_PlcDriverManager.py | 143 +
plc4s/pom.xml | 40 -
pom.xml | 899 +++---
.../delta-v => protocols/knxnet-ip}/pom.xml | 17 +-
protocols/{ => knxnet-ip}/src/main/java/.keepMe | 4 +
.../main/resources/daffodil-built-in-catalog.xml | 22 +-
.../plc4x/protocols/knxnetip/protocol.dfdl.xsd | 582 ++++
.../plc4x/protocols/knxnetip/protocol.scxml.xml | 253 ++
protocols/knxnet-ip/src/site/asciidoc/index.adoc | 57 +
.../plc4x/protocols/knxnetip/ProtocolTest.java} | 10 +-
.../apache/plc4x/protocols/knxnetip/protocol.tdml | 604 ++++
protocols/pom.xml | 53 +-
{plc4j/drivers/delta-v => protocols/proxy}/pom.xml | 12 +-
.../src/main/java/.keepMe} | 17 +-
.../apache/plc4x/protocols/proxy/interop.thrift | 93 +
protocols/{ => s7}/pom.xml | 36 +-
protocols/{ => s7}/src/main/java/.keepMe | 4 +
.../main/resources/daffodil-built-in-catalog.xml | 19 +-
.../apache/plc4x/protocols/s7/protocol.dfdl.xsd} | 596 +++-
.../apache/plc4x/protocols/s7/protocol.scxml.xml | 524 +++
.../org/apache/plc4x/protocols/s7/ManualTest.java | 82 +
.../apache/plc4x/protocols/s7/ProtocolTest.java} | 10 +-
.../org/apache/plc4x/protocols/s7/protocol.tdml | 2446 ++++++++++++++
.../apache/plc4x/protocols/cotp-protocol.dfdl.xsd | 213 --
.../org/apache/plc4x/protocols/tpkt-protocol.tdml | 112 -
protocols/{ => test-utils}/pom.xml | 46 +-
.../plc4x/protocols/AbstractProtocolTest.java | 11 +-
sandbox/dynamic-driver-base/pom.xml | 126 +
.../java/dynamic/actions/BaseConnectedAction.java | 17 +-
.../java/dynamic/actions/BaseDaffodilAction.java | 56 +
.../java/dynamic/actions/BasePlc4xAction.java | 52 +
.../java/dynamic/actions/ConnectAction.java | 81 +
.../java/dynamic/actions/InitContextAction.java | 106 +
.../java/dynamic/actions/ReceiveAction.java | 201 ++
.../actions/ReceiveExtractVerifyAction.java | 114 +
.../java/dynamic/actions/ReceiveRequestAction.java | 42 +-
.../dynamic/actions/ReceiveResponseAction.java | 65 +
.../sandbox/java/dynamic/actions/SendAction.java | 101 +
.../java/dynamic/actions/SendRequestAction.java | 57 +
.../connection/DynamicDriverConnectionBase.java | 153 +
.../java/dynamic/utils/RequestRegistry.java | 66 +
.../utils/JDOMTemplateInfosetInputter.scala | 45 +
.../opm => sandbox/dynamic-driver-s7}/pom.xml | 74 +-
.../sandbox/java/dynamic/s7/DynamicS7Driver.java | 80 +
.../dynamic/s7/actions/S7DecodeArticleNumber.java | 91 +
.../s7/actions/S7DecodeReadResponseAction.java | 315 ++
.../s7/actions/S7DecodeWriteResponseAction.java | 23 +-
.../dynamic/s7/connection/DynamicS7Connection.java | 186 ++
.../dynamic/s7/types/DataTransportErrorCode.java | 62 +
.../java/dynamic/s7/types/DataTransportSize.java | 64 +
.../sandbox/java/dynamic/s7/types/MemoryArea.java | 83 +
.../java/dynamic/s7/types/S7ControllerType.java | 17 +-
.../java/dynamic/s7}/types/TransportSize.java | 8 +-
.../sandbox/java/dynamic/s7/utils}/S7Field.java | 40 +-
.../java/dynamic/s7/utils/S7PlcFieldHandler.java | 569 ++++
.../java/dynamic/s7/utils/S7TsapIdEncoder.java | 28 +-
.../services/org.apache.plc4x.java.spi.PlcDriver | 38 +
sandbox/plc4x-maven-plugin/pom.xml | 225 ++
sandbox/plc4x-maven-plugin/src/it/settings.xml | 53 +
.../plc4x-maven-plugin/src/it/simple-it/pom.xml | 67 +
.../src/main/resources/test/protocol.dfdl.xsd | 67 +-
.../src/it/simple-it/verify.groovy | 13 +-
.../plc4x/plugins/codegenerator/GenerateMojo.java | 208 ++
.../plugins/codegenerator/GenerateMojoTest.java | 68 +
.../test/projects/simple-embedded-schema}/pom.xml | 41 +-
.../src/main/resources/protocol.dfdl.xsd | 67 +-
.../src/main/resources/template.ftlh | 22 +-
{plc4j/drivers => sandbox}/pom.xml | 37 +-
.../main/script/prerequisite-check.groovy | 50 +-
src/site/asciidoc/community/getting-involved.adoc | 102 -
src/site/asciidoc/developers/building.adoc | 38 +-
src/site/asciidoc/developers/ci.adoc | 4 +-
.../{community => developers}/conferences.adoc | 28 +-
src/site/asciidoc/developers/contributing.adoc | 101 +-
src/site/asciidoc/developers/decisions.adoc | 66 +
src/site/asciidoc/developers/jqassistant.adoc | 2 +-
src/site/asciidoc/developers/maturity.adoc | 76 +
src/site/asciidoc/developers/preparing.adoc | 391 +++
src/site/asciidoc/developers/release.adoc | 253 +-
src/site/asciidoc/developers/team.adoc | 55 +
src/site/asciidoc/developers/vpn.adoc | 2 +-
src/site/asciidoc/incubation-proposal.adoc | 227 --
src/site/asciidoc/index.adoc | 43 +-
src/site/asciidoc/protocols/delta-v/index.adoc | 2 +-
src/site/asciidoc/protocols/delta-v/read-data.adoc | 2 +-
.../protocols/delta-v/reverse-engineering.adoc | 4 +-
src/site/asciidoc/protocols/s7/index.adoc | 2 +-
src/site/asciidoc/protocols/s7/s7comm-plus.adoc | 4 +-
src/site/asciidoc/protocols/s7/s7comm.adoc | 2 +-
src/site/asciidoc/users/download.adoc | 64 +-
src/site/asciidoc/users/gettingstarted.adoc | 3 +
src/site/asciidoc/users/industry40.adoc | 2 +-
src/site/resources/css/site.css | 27 +-
.../images/PLC4X_rollup_83x237cm-final.pdf | 3347 ++++++++++++++++++++
.../{img => images}/apache_brooklyn_logo.png | Bin
.../{img => images}/apache_camel_logo.png | Bin
.../{img => images}/apache_edgent_logo.png | Bin
.../{img => images}/apache_kafka_logo.png | Bin
src/site/resources/images/apache_logo.png | Bin 0 -> 16457 bytes
.../{img => images}/apache_mynewt_logo.png | Bin
.../resources/{img => images}/apache_nifi_logo.svg | 0
.../{img => images}/apache_plc4x_logo.png | Bin
.../{img => images}/community-contribute-fork.png | Bin
.../contributing-github-create-pull-request.png | Bin 0 -> 112177 bytes
.../resources/images/contributing-github-fork.png | Bin 0 -> 96553 bytes
src/site/resources/{img => images}/iot-lab.jpg | Bin
.../neo4j-intellij-database-connections-view.png | Bin
.../neo4j-intellij-query-results.png | Bin
.../{img => images}/neo4j-intellij-settings.png | Bin
.../{img => images}/neo4j-web-console.png | Bin
.../{img => images}/plc4x-vpn-beckhoff-route-1.png | Bin
.../{img => images}/plc4x-vpn-beckhoff-route-2.png | Bin
.../{img => images}/plc4x-vpn-beckhoff-route-3.png | Bin
.../{img => images}/plc4x-vpn-beckhoff.jpg | Bin
.../{img => images}/plc4x-vpn-client-download.png | Bin
.../resources/{img => images}/plc4x-vpn-fatek.jpg | Bin
.../{img => images}/plc4x-vpn-siemens-hmi.jpg | Bin
.../{img => images}/plc4x-vpn-siemens-s7.jpg | Bin
.../resources/{img => images}/plc4x-vpn-wago.jpg | Bin
...release-git-diff-next-development-iteration.png | Bin 0 -> 134548 bytes
.../images/release-git-diff-prepare-release.png | Bin 0 -> 132752 bytes
src/site/resources/images/release-git-history.png | Bin 0 -> 160255 bytes
src/site/resources/images/team/cdutz.png | Bin 0 -> 27791 bytes
src/site/resources/images/team/jfeinauer.jpg | Bin 0 -> 24689 bytes
src/site/resources/images/team/sruehl.jpg | Bin 0 -> 15008 bytes
src/site/resources/images/team/tmitsch.png | Bin 0 -> 33005 bytes
src/site/resources/plc4x-doap.rdf | 111 +
src/site/resources/plc4x-pmc.rdf | 74 +
src/site/site.xml | 53 +-
tools/README.md | 72 +
tools/clean-site.sh | 35 +
tools/common.sh | 14 +-
tools/download_staged_release.sh | 11 +-
{plc4j/drivers/delta-v => tools}/pom.xml | 21 +-
tools/thrift/pom.xml | 246 ++
.../thrift/src/assembly/compiler.xml | 34 +-
.../pom.xml => tools/thrift/src/assembly/cpp.xml | 34 +-
tools/thrift/src/assembly/python.xml | 61 +
620 files changed, 40157 insertions(+), 4774 deletions(-)