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 2021/08/01 19:30:49 UTC

[plc4x] branch develop updated (0d6c7b0 -> bd7396d)

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

cdutz pushed a change to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git.


    from 0d6c7b0  Updated documentation for OPCUA driver
     add 31a7a52  - Fixed some more memory-leak issues in plc4c
     add aaf402d  - Initial commit of what I started working on for the PROFINET protocol (This doesn't compile as it's in it's super-early stages)
     add 71a90f1  - Continued implementing the PROFINET DCP Types
     add 7352fb3  Added some logging if messages are discarded in order to try tracking down some issues on embedded devices.
     add 9f7f6ee  CHanged the log-level from DEBUG to INFO
     add 086bccc  Added some debugging information for tracking down issues when running drivers on embedded hardware
     add 60ef131  Merge branch 'develop' of github.com:apache/plc4x into feature/profinet-chris
     add 5fd85ac  Merge branch 'develop' of github.com:apache/plc4x into feature/profinet-chris
     add ad95803  - Worked on implementing the basics of Discovery in API and SPI - Refactored the driver.getDriver function to operate on the driver-code and added a second getDriverForUrl
     add 0a139d2  Merge branch 'develop' of github.com:apache/plc4x into feature/profinet-chris
     add ef1f54e  - Got the Profinet driver to compile
     add e0bd3cb  - Managed to implement a first working version of Profinet auto-discovery working.
     add fffe4ac  Merge branch 'develop' of github.com:apache/plc4x into feature/profinet-chris
     add f0cf6eb  Merge branch 'develop' of github.com:apache/plc4x into feature/profinet-chris
     add d72f361  - Adjusted the code to latest changes from develop
     add a9e804e  plc4j: fixed timing issue with SimulatedConnectionTest
     add 86a0016  Merge branch 'develop' into feature/profinet-chris
     add fe89bcd  plc4x: unified golang and java xml writing of spi types
     add 6bed9e0  Merge branch 'develop' of github.com:apache/plc4x into feature/profinet-chris
     add 6c81528  - Fine-tuned the discovery to clean up allocated resources after finishing discovery - Made the example actually return something - Added an "executeWithHandler" which is able to intercept incoming events as they come in
     add 299a01c  - Commented out forcing pcap4j-core lib to the provided scope
     add ed306ad  - Added a serial transport - Made the existing transports safe against deadlocks if no data at all is coming in
     add c98b47a  - Line Break mess
     add 49fe49a  - Line Break mess
     add cd9b423  - Line Break mess
     add 83851a8  - Line Break mess
     add d286844  - Cleanup of imports
     add 9a96de3  Merge branch 'develop' of github.com:apache/plc4x into feature/profinet-chris
     add 2f08c8e  - Added some templates to automatically generate headers in newly created resources.
     add a223103  - Added the activating part of a workaround needed on Windows systems to compile C projects
     add 447862f  - Gave the go build some love
     add d626d8e  - Added new KnxManufacturers
     add 52c28a0  - Added new KnxManufacturers
     add e7f2b04  - Added a missing license-header
     add ec66a0f  - Added a fix allowing the opc-ua driver to be compiled on windows systems
     add 019c6f4  - Fine-tuned the prerequisiteCheck.groovy and added some finding to the README.md
     add 34bfb3f  - Streamlining of Apache Headers in the code-generation and the generated c code
     add dda53e8  - Streamlining of Apache Headers in the manual c code
     add 7a9cdcd  - Streamlining of Apache Headers in the protocol modules
     add 4b3342c  - Streamlining of Apache Headers in the rest of the project
     add bd7396d  - Streamlining of Apache Headers in the rest of the project

No new revisions were added by this update.

Summary of changes:
 .asf.yaml                                          |   4 +-
 .github/dependabot.yml                             |  28 +-
 .github/workflows/codeql-analysis.yml              |  32 +-
 .idea/fileTemplates/Properties File.properties     |   1 +
 .idea/fileTemplates/XML File.xml                   |   3 +
 .idea/fileTemplates/Yaml FIle.yaml                 |   1 +
 .idea/fileTemplates/Yml File.yml                   |   1 +
 .../includes/File Header Properties.properties     |   2 +-
 .../fileTemplates/includes/File Header XML.xml     |   6 +-
 .../fileTemplates/includes/File Header Yaml.yaml   |  11 -
 .../fileTemplates/includes/File Header Yml.yml     |  11 -
 .../fileTemplates/includes/File Header.java        |   6 +-
 .idea/fileTemplates/internal/AnnotationType.java   |   5 +
 .idea/fileTemplates/internal/Class.java            |   5 +
 .idea/fileTemplates/internal/Enum.java             |   5 +
 .idea/fileTemplates/internal/Interface.java        |   5 +
 .idea/fileTemplates/internal/Record.java           |   5 +
 .mvn/extensions.xml                                |  28 +-
 .mvn/wrapper/maven-wrapper.properties              |   3 +-
 .travis.yml                                        |  34 +-
 DEVELOPMENT.md                                     |  28 +-
 Jenkinsfile                                        |   1 -
 LICENSE                                            |   4 +
 README.md                                          |  31 +-
 Sometimes-Failling-Tests.md                        |  27 --
 build-reproducible.sh                              |   0
 .../BaseFreemarkerLanguageTemplateHelper.java      |  34 +-
 .../protocol/freemarker/FreemarkerException.java   |  34 +-
 .../freemarker/FreemarkerLanguageOutput.java       |  33 +-
 .../FreemarkerLanguageTemplateHelper.java          |  33 +-
 .../apache/plc4x/language/c/CLanguageOutput.java   |  34 +-
 .../plc4x/language/c/CLanguageTemplateHelper.java  |  34 +-
 .../resources/templates/c/data-io-template.c.ftlh  |  34 +-
 .../resources/templates/c/data-io-template.h.ftlh  |  34 +-
 .../resources/templates/c/enum-template.c.ftlh     |  34 +-
 .../resources/templates/c/enum-template.h.ftlh     |  34 +-
 .../resources/templates/c/pojo-template.c.ftlh     |  34 +-
 .../resources/templates/c/pojo-template.h.ftlh     |  33 +-
 .../src/test/resources/integration-test/pom.xml    |  36 +-
 .../language-c/src/test/resources/settings.xml     |   2 +
 .../apache/plc4x/language/go/GoLanguageOutput.java |  33 +-
 .../language/go/GoLanguageTemplateHelper.java      |  33 +-
 .../apache/plc4x/language/go/utils/FieldUtils.java |  34 +-
 .../language-go/src/test/resources/plc4go/pom.xml  |  36 +-
 .../language-go/src/test/resources/settings.xml    |   2 +
 .../plc4x/language/java/JavaLanguageOutput.java    |  33 +-
 .../language/java/JavaLanguageTemplateHelper.java  |  33 +-
 .../templates/java/data-io-template.java.ftlh      |  35 +-
 .../java/enum-package-info-template.java.ftlh      |  34 +-
 .../templates/java/enum-template.java.ftlh         |  35 +-
 .../resources/templates/java/io-template.java.ftlh |  35 +-
 .../templates/java/pojo-template.java.ftlh         |  35 +-
 .../src/test/resources/integration-test/pom.xml    |  36 +-
 .../language-java/src/test/resources/settings.xml  |   2 +
 code-generation/pom.xml                            |  28 +-
 .../plugins/codegenerator/language/mspec/MSpec.g4  |  34 +-
 .../mspec/expression/ExpressionStringListener.java |  33 +-
 .../mspec/expression/ExpressionStringParser.java   |  33 +-
 .../definitions/DefaultComplexTypeDefinition.java  |  33 +-
 .../definitions/DefaultDataIoTypeDefinition.java   |  34 +-
 .../DefaultDiscriminatedComplexTypeDefinition.java |  33 +-
 .../definitions/DefaultEnumTypeDefinition.java     |  33 +-
 .../mspec/model/definitions/DefaultEnumValue.java  |  33 +-
 .../model/definitions/DefaultTypeDefinition.java   |  33 +-
 .../mspec/model/fields/DefaultAbstractField.java   |  33 +-
 .../mspec/model/fields/DefaultArrayField.java      |  33 +-
 .../mspec/model/fields/DefaultChecksumField.java   |  33 +-
 .../mspec/model/fields/DefaultConstField.java      |  33 +-
 .../model/fields/DefaultDiscriminatorField.java    |  33 +-
 .../mspec/model/fields/DefaultEnumField.java       |  33 +-
 .../mspec/model/fields/DefaultImplicitField.java   |  33 +-
 .../model/fields/DefaultManualArrayField.java      |  33 +-
 .../mspec/model/fields/DefaultManualField.java     |  33 +-
 .../mspec/model/fields/DefaultOptionalField.java   |  33 +-
 .../mspec/model/fields/DefaultPaddingField.java    |  33 +-
 .../mspec/model/fields/DefaultReservedField.java   |  33 +-
 .../mspec/model/fields/DefaultSimpleField.java     |  33 +-
 .../mspec/model/fields/DefaultSwitchField.java     |  33 +-
 .../mspec/model/fields/DefaultTaggedField.java     |  34 +-
 .../mspec/model/fields/DefaultUnknownField.java    |  33 +-
 .../mspec/model/fields/DefaultVirtualField.java    |  33 +-
 .../mspec/parser/MessageFormatListener.java        |  33 +-
 .../language/mspec/parser/MessageFormatParser.java |  33 +-
 .../expression/ExpressionStringParserTest.java     |  33 +-
 .../mspec/parser/MessageFormatParserTest.java      |  33 +-
 .../src/test/resources/mspec.example               |   2 +-
 .../apache/plc4x/protocol/test/TestProtocol.java   |  34 +-
 .../src/main/resources/protocols/test/test.mspec   |  36 +-
 code-generation/protocol-test/src/site/site.xml    |  34 +-
 compare-reproducible.sh                            |   0
 mvnw                                               |   0
 plc4c/.gitignore                                   |   1 +
 plc4c/CMakeLists.txt                               |  16 +
 plc4c/CODE_CONVENTIONS.md                          |  28 +-
 plc4c/README.md                                    |  28 +-
 plc4c/drivers/modbus/src/driver_modbus.c           |  34 +-
 .../modbus/src/driver_modbus_encode_decode.c       |  34 +-
 plc4c/drivers/modbus/src/driver_modbus_packets.c   |  34 +-
 .../drivers/modbus/src/driver_modbus_sm_connect.c  |  34 +-
 .../modbus/src/driver_modbus_sm_disconnect.c       |  34 +-
 plc4c/drivers/modbus/src/driver_modbus_sm_read.c   |  34 +-
 plc4c/drivers/modbus/src/driver_modbus_sm_write.c  |  34 +-
 plc4c/drivers/s7/src/driver_s7.c                   |  34 +-
 plc4c/drivers/s7/src/driver_s7_encode_decode.c     |  34 +-
 plc4c/drivers/s7/src/driver_s7_packets.c           |  34 +-
 plc4c/drivers/s7/src/driver_s7_sm_connect.c        |  34 +-
 plc4c/drivers/s7/src/driver_s7_sm_disconnect.c     |  34 +-
 plc4c/drivers/s7/src/driver_s7_sm_read.c           |  34 +-
 plc4c/drivers/s7/src/driver_s7_sm_write.c          |  34 +-
 plc4c/drivers/simulated/src/driver_simulated.c     |  34 +-
 plc4c/generated-sources/modbus/include/data_item.h |  34 +-
 .../modbus/include/modbus_constants.h              |  35 +-
 .../modbus/include/modbus_data_type.h              |  34 +-
 .../modbus/include/modbus_error_code.h             |  34 +-
 .../generated-sources/modbus/include/modbus_pdu.h  |  33 +-
 .../modbus_pdu_read_file_record_request_item.h     |  35 +-
 .../modbus_pdu_read_file_record_response_item.h    |  35 +-
 .../modbus_pdu_write_file_record_request_item.h    |  35 +-
 .../modbus_pdu_write_file_record_response_item.h   |  35 +-
 .../modbus/include/modbus_serial_adu.h             |  35 +-
 .../modbus/include/modbus_tcp_adu.h                |  35 +-
 plc4c/generated-sources/modbus/src/data_item.c     |  34 +-
 .../modbus/src/modbus_constants.c                  |  34 +-
 .../modbus/src/modbus_data_type.c                  |  34 +-
 .../modbus/src/modbus_error_code.c                 |  34 +-
 plc4c/generated-sources/modbus/src/modbus_pdu.c    |  34 +-
 .../src/modbus_pdu_read_file_record_request_item.c |  34 +-
 .../modbus_pdu_read_file_record_response_item.c    |  34 +-
 .../modbus_pdu_write_file_record_request_item.c    |  34 +-
 .../modbus_pdu_write_file_record_response_item.c   |  34 +-
 .../modbus/src/modbus_serial_adu.c                 |  34 +-
 .../generated-sources/modbus/src/modbus_tcp_adu.c  |  34 +-
 plc4c/generated-sources/s7/include/cotp_packet.h   |  33 +-
 .../generated-sources/s7/include/cotp_parameter.h  |  33 +-
 .../s7/include/cotp_protocol_class.h               |  34 +-
 .../generated-sources/s7/include/cotp_tpdu_size.h  |  34 +-
 plc4c/generated-sources/s7/include/data_item.h     |  34 +-
 .../s7/include/data_transport_error_code.h         |  34 +-
 .../s7/include/data_transport_size.h               |  34 +-
 plc4c/generated-sources/s7/include/device_group.h  |  34 +-
 plc4c/generated-sources/s7/include/memory_area.h   |  34 +-
 plc4c/generated-sources/s7/include/s7_address.h    |  33 +-
 plc4c/generated-sources/s7/include/s7_message.h    |  35 +-
 plc4c/generated-sources/s7/include/s7_parameter.h  |  33 +-
 .../s7/include/s7_parameter_user_data_item.h       |  33 +-
 plc4c/generated-sources/s7/include/s7_payload.h    |  33 +-
 .../s7/include/s7_payload_user_data_item.h         |  35 +-
 .../s7/include/s7_var_payload_data_item.h          |  35 +-
 .../s7/include/s7_var_payload_status_item.h        |  35 +-
 .../s7/include/s7_var_request_parameter_item.h     |  33 +-
 .../s7/include/szl_data_tree_item.h                |  35 +-
 plc4c/generated-sources/s7/include/szl_id.h        |  35 +-
 .../s7/include/szl_module_type_class.h             |  34 +-
 plc4c/generated-sources/s7/include/szl_sublist.h   |  34 +-
 plc4c/generated-sources/s7/include/tpkt_packet.h   |  35 +-
 .../generated-sources/s7/include/transport_size.h  |  34 +-
 plc4c/generated-sources/s7/src/cotp_packet.c       |  34 +-
 plc4c/generated-sources/s7/src/cotp_parameter.c    |  34 +-
 .../generated-sources/s7/src/cotp_protocol_class.c |  34 +-
 plc4c/generated-sources/s7/src/cotp_tpdu_size.c    |  34 +-
 plc4c/generated-sources/s7/src/data_item.c         |  34 +-
 .../s7/src/data_transport_error_code.c             |  34 +-
 .../generated-sources/s7/src/data_transport_size.c |  34 +-
 plc4c/generated-sources/s7/src/device_group.c      |  34 +-
 plc4c/generated-sources/s7/src/memory_area.c       |  34 +-
 plc4c/generated-sources/s7/src/s7_address.c        |  34 +-
 plc4c/generated-sources/s7/src/s7_message.c        |  34 +-
 plc4c/generated-sources/s7/src/s7_parameter.c      |  34 +-
 .../s7/src/s7_parameter_user_data_item.c           |  34 +-
 plc4c/generated-sources/s7/src/s7_payload.c        |  34 +-
 .../s7/src/s7_payload_user_data_item.c             |  34 +-
 .../s7/src/s7_var_payload_data_item.c              |  34 +-
 .../s7/src/s7_var_payload_status_item.c            |  34 +-
 .../s7/src/s7_var_request_parameter_item.c         |  34 +-
 .../generated-sources/s7/src/szl_data_tree_item.c  |  34 +-
 plc4c/generated-sources/s7/src/szl_id.c            |  34 +-
 .../s7/src/szl_module_type_class.c                 |  34 +-
 plc4c/generated-sources/s7/src/szl_sublist.c       |  34 +-
 plc4c/generated-sources/s7/src/tpkt_packet.c       |  34 +-
 plc4c/generated-sources/s7/src/transport_size.c    |  34 +-
 plc4c/transports/dummy/src/transport_dummy.c       |  34 +-
 plc4c/transports/serial/src/transport_serial.c     |  34 +-
 plc4c/transports/tcp/src/transport_tcp.c           |  34 +-
 plc4c/venv/lib64                                   |   1 -
 plc4go/go.mod                                      |   5 +-
 plc4go/go.sum                                      |  24 +-
 .../knxnetip/readwrite/model/KnxManufacturer.go    |  56 ++-
 .../plc4go/spi/transports/TransportInstance.go     |   2 +
 .../spi/transports/{tcp => serial}/Transport.go    | 110 +++---
 .../plc4go/spi/transports/tcp/Transport.go         |  19 +-
 .../plc4go/spi/transports/test/Transport.go        |   8 +-
 .../plc4go/spi/transports/udp/Transport.go         |  20 +-
 plc4go/pom.xml                                     |  57 ++-
 plc4j/api/pom.xml                                  |  32 +-
 .../org/apache/plc4x/java/PlcDriverManager.java    |  41 +-
 .../org/apache/plc4x/java/api/Experimental.java    |   1 -
 .../plc4x/java/api/PlcConnectionExtension.java     |   1 -
 .../java/org/apache/plc4x/java/api/PlcDriver.java  |  15 +-
 .../api/exceptions/PlcFieldRangeException.java     |   1 -
 .../PlcIncompatibleDatatypeException.java          |   1 -
 .../exceptions/PlcProtocolTimeoutException.java    |  34 +-
 .../java/api/exceptions/PlcTimeoutException.java   |   1 -
 .../PlcUnsupportedProtocolException.java           |   1 -
 .../plc4x/java/api/messages/PlcDiscoveryItem.java  |  55 +++
 ...eResponse.java => PlcDiscoveryItemHandler.java} |   4 +-
 .../java/api/messages/PlcDiscoveryRequest.java     |   2 +
 .../java/api/messages/PlcDiscoveryResponse.java    |   8 +
 .../PlcDriverMetadata.java}                        |  13 +-
 .../java/api/model/PlcConsumerRegistration.java    |   1 -
 ...rRegistration.java => PlcDiscoveryHandler.java} |  19 +-
 .../plc4x/java/api/model/PlcSubscriptionField.java |  34 +-
 .../org/apache/plc4x/java/api/value/PlcValue.java  |   1 -
 .../plc4x/java/api/value/PlcValueHandler.java      |  19 +-
 .../PlcUsernamePasswordAuthenticationTest.java     |   1 -
 .../api/exceptions/PlcConnectionExceptionTest.java |   1 -
 .../java/api/exceptions/PlcExceptionTest.java      |   1 -
 .../api/exceptions/PlcFieldRangeExceptionTest.java |   1 -
 .../PlcIncompatibleDatatypeExceptionTest.java      |   1 -
 .../exceptions/PlcInvalidFieldExceptionTest.java   |   1 -
 .../java/api/exceptions/PlcIoExceptionTest.java    |   1 -
 .../exceptions/PlcNotImplementedExceptionTest.java |   1 -
 .../api/exceptions/PlcProtocolExceptionTest.java   |   1 -
 .../PlcProtocolPayloadTooBigExceptionTest.java     |   1 -
 .../api/exceptions/PlcRuntimeExceptionTest.java    |   1 -
 .../api/exceptions/PlcTimeoutExceptionTest.java    |   1 -
 .../PlcUnsupportedDataTypeExceptionTest.java       |   1 -
 .../PlcUnsupportedOperationExceptionTest.java      |   1 -
 .../plc4x/java/api/messages/APIMessageTests.java   |   1 -
 .../api/messages/PlcUnsubscriptionRequestTest.java |   1 -
 .../java/api/types/PlcClientDatatypeTest.java      |   3 -
 .../plc4x/java/api/types/PlcResponseCodeTest.java  |   1 -
 .../java/api/types/PlcSubscriptionTypeTest.java    |   1 -
 .../plc4x/java/mock/DuplicateMockDriver.java       |   1 -
 .../apache/plc4x/java/mock/MockPlcConnection.java  |   1 -
 .../services/org.apache.plc4x.java.api.PlcDriver   |  19 -
 .../services/org.apache.plc4x.java.api.PlcDriver   |  19 -
 plc4j/drivers/ab-eth/pom.xml                       |  32 +-
 .../org/apache/plc4x/java/abeth/AbEthDriver.java   |  34 +-
 .../abeth/configuration/AbEthConfiguration.java    |  34 +-
 .../apache/plc4x/java/abeth/field/AbEthField.java  |  34 +-
 .../plc4x/java/abeth/field/AbEthFieldHandler.java  |  34 +-
 .../java/abeth/protocol/AbEthProtocolLogic.java    |  34 +-
 .../java/abeth/protocol/Plc4xAbEthProtocol.java    |  34 +-
 .../apache/plc4x/java/abeth/types/FileType.java    |  34 +-
 .../protocol/abeth/AbEthParserSerializerTest.java  |  35 +-
 plc4j/drivers/ads/pom.xml                          |   2 +-
 .../org/apache/plc4x/java/ads/ADSPlcDriver.java    |  32 +-
 .../java/ads/configuration/AdsConfiguration.java   |  34 +-
 .../org/apache/plc4x/java/ads/field/AdsField.java  |  32 +-
 .../plc4x/java/ads/field/AdsFieldHandler.java      |  32 +-
 .../plc4x/java/ads/field/AdsStringField.java       |  34 +-
 .../plc4x/java/ads/field/DirectAdsField.java       |  32 +-
 .../plc4x/java/ads/field/DirectAdsStringField.java |  32 +-
 .../plc4x/java/ads/field/SymbolicAdsField.java     |  32 +-
 .../java/ads/field/SymbolicAdsStringField.java     |  32 +-
 .../java/ads/model/AdsSubscriptionHandle.java      |  34 +-
 .../plc4x/java/ads/protocol/AdsProtocolLogic.java  |  34 +-
 .../apache/plc4x/java/ads/utils/StaticHelper.java  |  34 +-
 .../ads/AdsDiscoverySerializerParserTest.java      |  35 +-
 .../org/apache/plc4x/protocol/ads/AdsDriverIT.java |  34 +-
 .../protocol/ads/AdsSerializerParserTest.java      |  35 +-
 .../apache/plc4x/protocol/ads/HexBase64Helper.java |  34 +-
 .../plc4x/protocol/ads/ManualAdsDriverTest.java    |  34 +-
 .../protocol/ads/ManualParserSerializerTest.java   |  34 +-
 plc4j/drivers/canopen/pom.xml                      |  32 +-
 .../plc4x/java/canopen/CANOpenPlcDriver.java       |  32 +-
 .../api/conversation/canopen/CANConversation.java  |  34 +-
 .../canopen/CANOpenConversationBase.java           |  34 +-
 .../canopen/SDODownloadConversation.java           |  34 +-
 .../canopen/SDOUploadConversation.java             |  34 +-
 .../api/segmentation/accumulator/ByteStorage.java  |  34 +-
 .../api/segmentation/accumulator/Storage.java      |  34 +-
 .../configuration/CANOpenConfiguration.java        |  34 +-
 .../java/canopen/context/CANOpenDriverContext.java |  34 +-
 .../plc4x/java/canopen/field/CANOpenField.java     |  34 +-
 .../java/canopen/field/CANOpenFieldHandler.java    |  34 +-
 .../java/canopen/field/CANOpenHeartbeatField.java  |  34 +-
 .../plc4x/java/canopen/field/CANOpenNMTField.java  |  34 +-
 .../plc4x/java/canopen/field/CANOpenPDOField.java  |  34 +-
 .../plc4x/java/canopen/field/CANOpenSDOField.java  |  34 +-
 .../canopen/field/CANOpenSubscriptionField.java    |  34 +-
 .../plc4x/java/canopen/helper/CANOpenHelper.java   |  34 +-
 .../plc4x/java/canopen/helper/HeaderParser.java    |  34 +-
 .../plc4x/java/canopen/listener/Callback.java      |  34 +-
 .../java/canopen/listener/CompositeCallback.java   |  34 +-
 .../canopen/protocol/CANOpenProtocolLogic.java     |  34 +-
 .../protocol/CANOpenSubscriptionHandle.java        |  34 +-
 .../canopen/socketcan/SocketCANConversation.java   |  34 +-
 .../canopen/transport/CANOpenAbortException.java   |  34 +-
 .../plc4x/java/canopen/transport/CANOpenFrame.java |  34 +-
 .../canopen/transport/CANOpenFrameBuilder.java     |  34 +-
 .../transport/CANOpenFrameBuilderFactory.java      |  34 +-
 .../transport/socketcan/CANOpenSocketCANFrame.java |  34 +-
 .../socketcan/CANOpenSocketCANFrameBuilder.java    |  34 +-
 .../socketcan/io/CANOpenSocketCANFrameIO.java      |  34 +-
 .../plc4x/java/canopen/CANOpenDriverSDOIT.java     |  34 +-
 .../plc4x/java/canopen/CANOpenPayloadTest.java     |  34 +-
 .../plc4x/java/canopen/CANOpenWiresharkTest.java   |  34 +-
 .../java/org/apache/plc4x/java/canopen/Main.java   |  34 +-
 .../plc4x/java/canopen/ManualParserTest.java       |  34 +-
 .../java/canopen/field/CANOpenFieldSDOTest.java    |  34 +-
 .../java/canopen/field/CANOpenNMTFieldTest.java    |  34 +-
 .../java/canopen/field/CANOpenPDOFieldTest.java    |  34 +-
 .../java/canopen/field/CANOpenSDOFieldTest.java    |  34 +-
 plc4j/drivers/eip/pom.xml                          |  32 +-
 .../java/eip/readwrite/EIPDriverTestsuite.java     |  34 +-
 .../readwrite/EIPParserSerializerTestsuite.java    |  34 +-
 plc4j/drivers/firmata/pom.xml                      |  32 +-
 .../java/firmata/readwrite/FirmataDriver.java      |  34 +-
 .../configuration/FirmataConfiguration.java        |  34 +-
 .../readwrite/context/FirmataDriverContext.java    |  34 +-
 .../java/firmata/readwrite/field/FirmataField.java |  34 +-
 .../readwrite/field/FirmataFieldAnalog.java        |  34 +-
 .../readwrite/field/FirmataFieldDigital.java       |  34 +-
 .../readwrite/field/FirmataFieldHandler.java       |  34 +-
 .../readwrite/model/FirmataSubscriptionHandle.java |  34 +-
 .../readwrite/protocol/FirmataProtocolLogic.java   |  34 +-
 .../java/firmata/readwrite/utils/FirmataUtils.java |  34 +-
 .../readwrite/FirmataParserSerializerTest.java     |  34 +-
 .../apache/plc4x/java/knxnetip/KnxNetIpDriver.java |  34 +-
 .../configuration/KnxNetIpConfiguration.java       |  34 +-
 .../knxnetip/context/KnxNetIpDriverContext.java    |  34 +-
 .../plc4x/java/knxnetip/ets5/Ets5Parser.java       |  34 +-
 .../java/knxnetip/ets5/model/AddressType.java      |  34 +-
 .../plc4x/java/knxnetip/ets5/model/Ets5Model.java  |  34 +-
 .../plc4x/java/knxnetip/ets5/model/Function.java   |  34 +-
 .../java/knxnetip/ets5/model/GroupAddress.java     |  34 +-
 .../plc4x/java/knxnetip/field/KnxNetIpField.java   |  34 +-
 .../java/knxnetip/field/KnxNetIpFieldHandler.java  |  34 +-
 .../knxnetip/model/KnxNetIpSubscriptionHandle.java |  34 +-
 .../knxnetip/protocol/KnxNetIpProtocolLogic.java   |  34 +-
 .../plc4x/java/knxnetip/utils/KnxHelper.java       |  34 +-
 .../knxnetip/KnxNetIpParserSerializerTest.java     |  35 +-
 .../apache/plc4x/java/knxnetip/ManualKnxNetIp.java |  34 +-
 .../knxnetip/src/test/resources/logback.xml        |  28 +-
 .../org/apache/plc4x/java/mock/MockDriver.java     |  34 +-
 .../plc4x/java/mock/connection/MockConnection.java |  34 +-
 .../plc4x/java/mock/connection/MockDevice.java     |   1 -
 .../java/mock/connection/tcp/TcpHexDumper.java     |  32 +-
 .../apache/plc4x/java/mock/field/MockField.java    |  34 +-
 .../plc4x/java/mock/field/MockFieldHandler.java    |   1 -
 .../apache/plc4x/java/mock/field/MockPlcValue.java |  33 +-
 .../org/apache/plc4x/java/mock/field/MockType.java |  34 +-
 .../plc4x/java/mock/field/MockValueHandler.java    |  34 +-
 .../mock/protocol/Plc4XSupportedDataTypes.java     |  32 +-
 .../org/apache/plc4x/java/mock/util/Assert.java    |  32 +-
 .../org/apache/plc4x/java/mock/util/HexUtil.java   |  33 +-
 .../org/apache/plc4x/java/modbus/ModbusDriver.java |  34 +-
 .../java/modbus/config/ModbusConfiguration.java    |  34 +-
 .../java/modbus/field/ModbusExtendedRegister.java  |  32 +-
 .../plc4x/java/modbus/field/ModbusField.java       |  34 +-
 .../plc4x/java/modbus/field/ModbusFieldCoil.java   |  32 +-
 .../modbus/field/ModbusFieldDiscreteInput.java     |  32 +-
 .../java/modbus/field/ModbusFieldHandler.java      |  34 +-
 .../modbus/field/ModbusFieldHoldingRegister.java   |  32 +-
 .../modbus/field/ModbusFieldInputRegister.java     |  32 +-
 .../java/modbus/protocol/ModbusProtocolLogic.java  |  34 +-
 .../plc4x/java/modbus/ManualModbusDriverTest.java  |  34 +-
 .../apache/plc4x/java/modbus/ModbusDriverIT.java   |  34 +-
 .../apache/plc4x/java/modbus/ModbusEncodeTest.java |  34 +-
 .../plc4x/java/modbus/ModbusFieldDataTypeTest.java |  34 +-
 .../apache/plc4x/java/modbus/ModbusFieldTest.java  |  34 +-
 .../java/modbus/ModbusParserSerializerTest.java    |  34 +-
 .../apache/plc4x/java/opcua/OpcuaPlcDriver.java    |  34 +-
 .../java/opcua/config/OpcuaConfiguration.java      |  35 +-
 .../java/opcua/context/CertificateGenerator.java   |   1 -
 .../java/opcua/context/CertificateKeyPair.java     |   1 -
 .../java/opcua/context/EncryptionHandler.java      |  35 +-
 .../plc4x/java/opcua/context/SecureChannel.java    |   1 -
 .../context/SecureChannelTransactionManager.java   |   1 -
 .../apache/plc4x/java/opcua/field/OpcuaField.java  |  34 +-
 .../java/opcua/field/OpcuaPlcFieldHandler.java     |  34 +-
 .../plc4x/java/opcua/optimizer/OpcuaOptimizer.java |   1 -
 .../opcua/protocol/OpcuaSubscriptionHandle.java    |  34 +-
 .../apache/plc4x/java/opcua/ManualPLC4XOpcua.java  |  34 +-
 .../plc4x/java/opcua/OpcuaPlcDriverTest.java       |  34 +-
 .../org/apache/plc4x/java/opcua/UtilsTest.java     |  35 +-
 .../connection/OpcuaTcpPlcConnectionTest.java      |  34 +-
 .../plc4x/java/opcua/protocol/OpcuaFieldTest.java  |  34 +-
 .../opcua/protocol/OpcuaPlcFieldHandlerTest.java   |  34 +-
 .../protocol/OpcuaSubscriptionHandleTest.java      |  34 +-
 plc4j/drivers/opcua/src/test/resources/logback.xml |  29 +-
 plc4j/drivers/pom.xml                              |   3 +-
 plc4j/drivers/{modbus => profinet}/pom.xml         |  49 ++-
 .../plc4x/java/profinet/ProfinetDriver.java}       | 114 +++---
 .../profinet/config/ProfinetConfiguration.java}    |  40 +-
 .../context/ProfinetDiscoveryContext.java}         |   7 +-
 .../profinet/discovery/ProfinetPlcDiscoverer.java  | 261 +++++++++++++
 .../plc4x/java/profinet/field/ProfinetField.java}  |  12 +-
 .../java/profinet/field/ProfinetFieldHandler.java} |   7 +-
 .../profinet/protocol/ProfinetDiscoveryLogic.java} |  14 +-
 .../profinet/protocol/ProfinetProtocolLogic.java   |  62 +++
 .../plc4x/java/profinet/utils/StaticHelper.java}   |  16 +-
 .../services/org.apache.plc4x.java.api.PlcDriver   |   2 +-
 .../apache/plc4x/java/s7/readwrite/S7Driver.java   |  34 +-
 .../readwrite/configuration/S7Configuration.java   |   1 -
 .../java/s7/readwrite/context/S7DriverContext.java |  34 +-
 .../plc4x/java/s7/readwrite/field/S7Field.java     |  34 +-
 .../java/s7/readwrite/field/S7PlcFieldHandler.java |  34 +-
 .../java/s7/readwrite/field/S7StringField.java     |  34 +-
 .../optimizer/DefaultS7MessageProcessor.java       |  34 +-
 .../s7/readwrite/optimizer/S7MessageProcessor.java |  34 +-
 .../java/s7/readwrite/optimizer/S7Optimizer.java   |  34 +-
 .../java/s7/readwrite/types/S7ControllerType.java  |  34 +-
 .../java/s7/readwrite/utils/S7TsapIdEncoder.java   |  34 +-
 .../apache/plc4x/java/s7/utils/StaticHelper.java   |  34 +-
 .../s7/src/test/java/BenchmarkGeneratedS7.java     |  32 +-
 .../plc4x/java/s7/readwrite/DatatypesTest.java     |  34 +-
 .../java/s7/readwrite/ManualS7DriverTest.java      |  34 +-
 .../apache/plc4x/java/s7/readwrite/S7DriverIT.java |  34 +-
 .../java/s7/readwrite/S7ParserSerializerTest.java  |  34 +-
 .../plc4x/java/s7/readwrite/field/S7FieldTest.java |  34 +-
 .../plc4x/java/s7/readwrite/issues/PLC4X272.java   |  34 +-
 plc4j/drivers/s7/src/test/resources/logback.xml    |  28 +-
 .../plc4x/java/simulated/SimulatedDriver.java      |  32 +-
 .../simulated/connection/SimulatedConnection.java  |  32 +-
 .../java/simulated/connection/SimulatedDevice.java |  32 +-
 .../plc4x/java/simulated/field/SimulatedField.java |  32 +-
 .../simulated/field/SimulatedFieldHandler.java     |  33 +-
 .../java/simulated/types/SimulatedFieldType.java   |  33 +-
 .../plc4x/java/simulated/utils/StaticHelper.java   |  35 +-
 .../plc4x/java/simulated/SimulatedDriverTest.java  |  33 +-
 .../connection/SimulatedConnectionTest.java        |  33 +-
 .../simulated/connection/SimulatedDeviceTest.java  |  32 +-
 .../simulated/field/SimularedFieldHandlerTest.java |  33 +-
 .../java/simulated/field/SimulatedFieldTest.java   |  33 +-
 plc4j/examples/hello-cloud-azure/pom.xml           |  28 +-
 .../java/examples/cloud/azure/CliOptions.java      |  33 +-
 .../cloud/azure/S7PlcToAzureIoTHubSample.java      |  32 +-
 plc4j/examples/hello-cloud-google/README.md        |  28 +-
 plc4j/examples/hello-cloud-google/pom.xml          |  28 +-
 .../java/examples/cloud/google/CliOptions.java     |  33 +-
 .../cloud/google/S7PlcToGoogleIoTCoreSample.java   |  32 +-
 .../src/main/resources/logback.xml                 |  28 +-
 plc4j/examples/hello-connectivity-kafka/pom.xml    |  28 +-
 plc4j/examples/hello-connectivity-kafka/server.sh  |   0
 .../connectivity/kafka/KafkaConnector.java         |  32 +-
 .../connectivity/kafka/model/Configuration.java    |  32 +-
 .../connectivity/kafka/model/KafkaConfig.java      |  32 +-
 .../connectivity/kafka/model/PlcConfig.java        |  32 +-
 .../connectivity/kafka/model/PlcFieldConfig.java   |  32 +-
 .../connectivity/kafka/model/PlcMemoryBlock.java   |  32 +-
 .../src/main/resources/logback.xml                 |  28 +-
 .../hello-connectivity-mqtt/mqtt-connector.yml     |   2 +-
 .../examples/connectivity/mqtt/MqttConnector.java  |  33 +-
 .../connectivity/mqtt/model/Configuration.java     |  32 +-
 .../connectivity/mqtt/model/MqttConfig.java        |  32 +-
 .../connectivity/mqtt/model/PlcConfig.java         |  32 +-
 .../connectivity/mqtt/model/PlcFieldConfig.java    |  32 +-
 .../connectivity/mqtt/model/PlcMemoryBlock.java    |  32 +-
 .../src/main/resources/logback.xml                 |  28 +-
 .../{hello-opm => hello-discovery}/pom.xml         |  18 +-
 .../java/examples/hellodiscovery/CliOptions.java   |  72 ++++
 .../examples/hellodiscovery/HelloDiscovery.java    |  72 ++++
 .../src/main/resources/logback.xml                 |   4 +-
 .../examples/hello-influx-data-collection/pom.xml  |  28 +-
 .../java/examples/helloinflux/HelloInflux.java     |  34 +-
 .../src/main/resources/logback.xml                 |  28 +-
 plc4j/examples/hello-integration-edgent/pom.xml    |  28 +-
 .../examples/integration/edgent/CliOptions.java    |  33 +-
 .../examples/integration/edgent/PlcLogger.java     |  32 +-
 .../src/main/resources/logback.xml                 |  28 +-
 plc4j/examples/hello-integration-iotdb/pom.xml     |  28 +-
 .../examples/integration/iotdb/CliOptions.java     |  33 +-
 .../examples/integration/iotdb/IIoTDBWriter.java   |   1 -
 .../integration/iotdb/IoTDBWriterWithJDBC.java     |   1 -
 .../integration/iotdb/IoTDBWriterWithSession.java  |   1 -
 .../java/examples/integration/iotdb/PlcLogger.java |  32 +-
 .../src/main/resources/logback.xml                 |  28 +-
 .../hello-kafka-connect-elasticsearch/README.md    |  28 +-
 .../elasticsearch-sink.properties                  |   1 -
 .../elasticsearch-worker.properties                |   1 -
 .../kafka-connect-config/plc4x-worker.properties   |   1 -
 .../plc4x/java/examples/helloopm/HelloOpm.java     |  33 +-
 .../hello-opm/src/main/resources/logback.xml       |  28 +-
 plc4j/examples/hello-webapp/webapp/pom.xml         |   1 -
 .../plc4x/examples/watertank/Application.java      |  33 +-
 .../watertank/service/WaterTankService.java        |  34 +-
 .../java/org/springframework/core/JdkVersion.java  |  34 +-
 .../resources/META-INF/flex/services-config.xml    |  28 +-
 .../src/main/resources/application.properties      |   1 -
 .../webapp/src/main/webapp/WEB-INF/web.xml         |  28 +-
 plc4j/examples/hello-webservice/pom.xml            |  28 +-
 .../java/examples/hellowebservice/CliOptions.java  |  33 +-
 .../examples/hellowebservice/HelloWebservice.java  |  34 +-
 .../src/main/resources/logback.xml                 |  28 +-
 .../hello-world-plc4x-subscription/pom.xml         |  28 +-
 .../helloplc4x/subscription/CliOptions.java        |  33 +-
 .../subscription/HelloPlc4xSubscription.java       |  34 +-
 .../src/main/resources/logback.xml                 |  28 +-
 plc4j/examples/hello-world-plc4x-write/pom.xml     |  28 +-
 .../java/examples/helloplc4x/write/CliOptions.java |  33 +-
 .../examples/helloplc4x/write/HelloPlc4xWrite.java |  34 +-
 .../src/main/resources/logback.xml                 |  28 +-
 plc4j/examples/hello-world-plc4x/pom.xml           |  28 +-
 .../plc4x/java/examples/helloplc4x/CliOptions.java |  33 +-
 .../plc4x/java/examples/helloplc4x/HelloPlc4x.java |  34 +-
 .../src/main/resources/logback.xml                 |  28 +-
 plc4j/examples/poll-loop/pom.xml                   |  28 +-
 .../apache/plc4x/java/examples/pollloop/Main.java  |  33 +-
 .../plc4x/java/examples/pollloop/PollLoop.java     |  33 +-
 plc4j/examples/pom.xml                             |   8 +
 plc4j/integrations/apache-calcite/pom.xml          |  28 +-
 .../main/java/org/apache/plc4x/Plc4xBaseTable.java |  34 +-
 .../main/java/org/apache/plc4x/Plc4xSchema.java    |  34 +-
 .../java/org/apache/plc4x/Plc4xSchemaFactory.java  |  34 +-
 .../java/org/apache/plc4x/Plc4xStreamTable.java    |  34 +-
 .../src/main/java/org/apache/plc4x/Plc4xTable.java |  34 +-
 .../java/org/apache/plc4x/DriverManagerTest.java   |  34 +-
 .../java/org/apache/plc4x/Plc4XBaseTableTest.java  |  34 +-
 .../org/apache/plc4x/Plc4xSchemaFactoryTest.java   |  34 +-
 .../apache-calcite/src/test/resources/logback.xml  |  28 +-
 .../apache-calcite/src/test/resources/model.json   |  16 -
 plc4j/integrations/apache-camel/pom.xml            |  28 +-
 .../java/org/apache/plc4x/camel/Constants.java     |  34 +-
 .../org/apache/plc4x/camel/Plc4XComponent.java     |  34 +-
 .../java/org/apache/plc4x/camel/Plc4XConsumer.java |  32 +-
 .../java/org/apache/plc4x/camel/Plc4XEndpoint.java |  34 +-
 .../apache/plc4x/camel/Plc4XPollingConsumer.java   |  32 +-
 .../java/org/apache/plc4x/camel/Plc4XProducer.java |  34 +-
 .../main/java/org/apache/plc4x/camel/TagData.java  |  34 +-
 .../services/org/apache/camel/component/plc4x      |  36 +-
 .../java/org/apache/plc4x/camel/ConstantsTest.java |  34 +-
 .../java/org/apache/plc4x/camel/ManualTest.java    |  32 +-
 .../java/org/apache/plc4x/camel/MockDriver.java    |  34 +-
 .../org/apache/plc4x/camel/Plc4XComponentTest.java |  34 +-
 .../org/apache/plc4x/camel/Plc4XConsumerTest.java  |  32 +-
 .../org/apache/plc4x/camel/Plc4XEndpointTest.java  |  34 +-
 .../plc4x/camel/Plc4XPollingConsumerTest.java      |  32 +-
 .../org/apache/plc4x/camel/Plc4XProducerTest.java  |  34 +-
 .../apache-camel/src/test/resources/logback.xml    |  28 +-
 plc4j/integrations/apache-edgent/pom.xml           |  28 +-
 .../apache/plc4x/edgent/PlcConnectionAdapter.java  |  34 +-
 .../java/org/apache/plc4x/edgent/PlcFunctions.java |  34 +-
 .../java/org/apache/plc4x/edgent/package-info.java |  34 +-
 .../plc4x/edgent/PlcConnectionAdapterTest.java     |  34 +-
 .../org/apache/plc4x/edgent/PlcFunctionsTest.java  |  34 +-
 plc4j/integrations/apache-kafka/pom.xml            |  28 +-
 .../org/apache/plc4x/kafka/Plc4xSinkConnector.java |  34 +-
 .../java/org/apache/plc4x/kafka/Plc4xSinkTask.java |  34 +-
 .../apache/plc4x/kafka/Plc4xSourceConnector.java   |  34 +-
 .../org/apache/plc4x/kafka/Plc4xSourceTask.java    |  34 +-
 .../org/apache/plc4x/kafka/config/Constants.java   |  34 +-
 .../java/org/apache/plc4x/kafka/config/Field.java  |  34 +-
 .../java/org/apache/plc4x/kafka/config/Job.java    |  34 +-
 .../apache/plc4x/kafka/config/JobReference.java    |  34 +-
 .../java/org/apache/plc4x/kafka/config/Sink.java   |  36 +-
 .../org/apache/plc4x/kafka/config/SinkConfig.java  |  34 +-
 .../java/org/apache/plc4x/kafka/config/Source.java |  36 +-
 .../apache/plc4x/kafka/config/SourceConfig.java    |  34 +-
 .../org/apache/plc4x/kafka/util/VersionUtil.java   |  34 +-
 .../apache/plc4x/kafka/config/SinkConfigTest.java  |  34 +-
 .../apache/plc4x/kafka/config/SinkTaskTest.java    |  34 +-
 .../plc4x/kafka/config/SourceConfigTest.java       |  34 +-
 .../apache/plc4x/kafka/config/SourceTaskTest.java  |  34 +-
 .../apache-nifi/nifi-plc4x-nar/pom.xml             |  30 +-
 .../apache-nifi/nifi-plc4x-processors/pom.xml      |  30 +-
 .../org/apache/plc4x/nifi/BasePlc4xProcessor.java  |  32 +-
 .../org/apache/plc4x/nifi/Plc4xSinkProcessor.java  |  32 +-
 .../apache/plc4x/nifi/Plc4xSourceProcessor.java    |  32 +-
 .../services/org.apache.nifi.processor.Processor   |   1 -
 .../plc4x4nifi/Plc4xSinkProcessorTest.java         |   1 -
 .../plc4x4nifi/Plc4xSourceProcessorTest.java       |  32 +-
 plc4j/integrations/apache-nifi/pom.xml             |  30 +-
 plc4j/integrations/opcua-server/pom.xml            |  29 +-
 .../apache/plc4x/java/opcuaserver/OPCUAServer.java |   1 -
 .../opcuaserver/backend/Plc4xCommunication.java    |   3 +-
 .../java/opcuaserver/backend/Plc4xNamespace.java   |   1 -
 .../opcuaserver/configuration/Configuration.java   |   1 -
 .../configuration/DeviceConfiguration.java         |   1 -
 .../configuration/PasswordConfiguration.java       |   1 -
 .../plc4x/java/opcuaserver/configuration/Tag.java  |   1 -
 .../plc4x/java/opcuaserver/configuration/User.java |   1 -
 .../opcuaserver/context/CertificateGenerator.java  |   1 -
 .../opcuaserver/context/CertificateKeyPair.java    |   1 -
 .../opcua-server/src/main/resources/config.yml     |  31 +-
 .../opcua-server/src/main/resources/logback.xml    |  28 +-
 .../plc4x/java/opcuaserver/OpcuaPlcDriverTest.java |  34 +-
 .../opcua-server/src/test/resources/config.yml     |  31 +-
 plc4j/integrations/pom.xml                         |   3 +-
 plc4j/osgi/pom.xml                                 |  28 +-
 plc4j/pom.xml                                      |  28 +-
 plc4j/protocols/ads/LINKS.md                       |  28 +-
 plc4j/protocols/ads/pom.xml                        |  28 +-
 .../java/ads/api/commands/AdsAbstractRequest.java  |  32 +-
 .../java/ads/api/commands/AdsAbstractResponse.java |  32 +-
 .../commands/AdsAddDeviceNotificationRequest.java  |  32 +-
 .../commands/AdsAddDeviceNotificationResponse.java |  32 +-
 .../java/ads/api/commands/AdsCommandType.java      |  32 +-
 .../AdsDeleteDeviceNotificationRequest.java        |  32 +-
 .../AdsDeleteDeviceNotificationResponse.java       |  32 +-
 .../api/commands/AdsDeviceNotificationRequest.java |  32 +-
 .../commands/AdsDeviceNotificationResponse.java    |  32 +-
 .../ads/api/commands/AdsReadDeviceInfoRequest.java |  32 +-
 .../api/commands/AdsReadDeviceInfoResponse.java    |  32 +-
 .../java/ads/api/commands/AdsReadRequest.java      |  32 +-
 .../java/ads/api/commands/AdsReadResponse.java     |  32 +-
 .../java/ads/api/commands/AdsReadStateRequest.java |  32 +-
 .../ads/api/commands/AdsReadStateResponse.java     |  32 +-
 .../java/ads/api/commands/AdsReadWriteRequest.java |  32 +-
 .../ads/api/commands/AdsReadWriteResponse.java     |  32 +-
 .../ads/api/commands/AdsWriteControlRequest.java   |  32 +-
 .../ads/api/commands/AdsWriteControlResponse.java  |  32 +-
 .../java/ads/api/commands/AdsWriteRequest.java     |  32 +-
 .../java/ads/api/commands/AdsWriteResponse.java    |  32 +-
 .../java/ads/api/commands/UnknownCommand.java      |  32 +-
 .../plc4x/java/ads/api/commands/package-info.java  |  32 +-
 .../api/commands/types/AdsNotificationSample.java  |  32 +-
 .../java/ads/api/commands/types/AdsReturnCode.java |  32 +-
 .../ads/api/commands/types/AdsStampHeader.java     |  32 +-
 .../java/ads/api/commands/types/AdsState.java      |  32 +-
 .../java/ads/api/commands/types/CycleTime.java     |  32 +-
 .../plc4x/java/ads/api/commands/types/Data.java    |  32 +-
 .../plc4x/java/ads/api/commands/types/Device.java  |  32 +-
 .../java/ads/api/commands/types/DeviceState.java   |  32 +-
 .../java/ads/api/commands/types/IndexGroup.java    |  32 +-
 .../java/ads/api/commands/types/IndexOffset.java   |  32 +-
 .../plc4x/java/ads/api/commands/types/Length.java  |  32 +-
 .../java/ads/api/commands/types/MajorVersion.java  |  32 +-
 .../java/ads/api/commands/types/MaxDelay.java      |  32 +-
 .../java/ads/api/commands/types/MinorVersion.java  |  32 +-
 .../ads/api/commands/types/NotificationHandle.java |  32 +-
 .../java/ads/api/commands/types/ReadLength.java    |  32 +-
 .../plc4x/java/ads/api/commands/types/Result.java  |  32 +-
 .../java/ads/api/commands/types/SampleSize.java    |  32 +-
 .../plc4x/java/ads/api/commands/types/Samples.java |  32 +-
 .../plc4x/java/ads/api/commands/types/Stamps.java  |  32 +-
 .../java/ads/api/commands/types/TimeStamp.java     |  32 +-
 .../ads/api/commands/types/TransmissionMode.java   |  32 +-
 .../plc4x/java/ads/api/commands/types/Version.java |  32 +-
 .../java/ads/api/commands/types/WriteLength.java   |  32 +-
 .../java/ads/api/commands/types/package-info.java  |  32 +-
 .../apache/plc4x/java/ads/api/generic/AdsData.java |  32 +-
 .../plc4x/java/ads/api/generic/AmsHeader.java      |  32 +-
 .../plc4x/java/ads/api/generic/AmsPacket.java      |  32 +-
 .../plc4x/java/ads/api/generic/package-info.java   |  32 +-
 .../plc4x/java/ads/api/generic/types/AmsError.java |  32 +-
 .../plc4x/java/ads/api/generic/types/AmsNetId.java |  32 +-
 .../plc4x/java/ads/api/generic/types/AmsPort.java  |  32 +-
 .../plc4x/java/ads/api/generic/types/Command.java  |  32 +-
 .../java/ads/api/generic/types/DataLength.java     |  32 +-
 .../plc4x/java/ads/api/generic/types/Invoke.java   |  32 +-
 .../plc4x/java/ads/api/generic/types/State.java    |  32 +-
 .../java/ads/api/generic/types/package-info.java   |  32 +-
 .../apache/plc4x/java/ads/api/package-info.java    |  32 +-
 .../ads/api/serial/AmsSerialAcknowledgeFrame.java  |  32 +-
 .../plc4x/java/ads/api/serial/AmsSerialFrame.java  |  32 +-
 .../java/ads/api/serial/AmsSerialResetFrame.java   |  32 +-
 .../plc4x/java/ads/api/serial/package-info.java    |  32 +-
 .../plc4x/java/ads/api/serial/types/CRC.java       |  32 +-
 .../java/ads/api/serial/types/FragmentNumber.java  |  32 +-
 .../java/ads/api/serial/types/MagicCookie.java     |  32 +-
 .../java/ads/api/serial/types/ReceiverAddress.java |  32 +-
 .../ads/api/serial/types/TransmitterAddress.java   |  32 +-
 .../plc4x/java/ads/api/serial/types/UserData.java  |  32 +-
 .../java/ads/api/serial/types/UserDataLength.java  |  32 +-
 .../java/ads/api/serial/types/package-info.java    |  32 +-
 .../plc4x/java/ads/api/tcp/AmsTCPPacket.java       |  32 +-
 .../plc4x/java/ads/api/tcp/AmsTcpHeader.java       |  32 +-
 .../plc4x/java/ads/api/tcp/package-info.java       |  32 +-
 .../plc4x/java/ads/api/tcp/types/TcpLength.java    |  32 +-
 .../plc4x/java/ads/api/tcp/types/UserData.java     |  32 +-
 .../plc4x/java/ads/api/tcp/types/package-info.java |  32 +-
 .../plc4x/java/ads/api/util/ByteBufSupplier.java   |  32 +-
 .../plc4x/java/ads/api/util/ByteReadable.java      |  32 +-
 .../apache/plc4x/java/ads/api/util/ByteValue.java  |  32 +-
 .../plc4x/java/ads/api/util/LengthSupplier.java    |  32 +-
 .../java/ads/api/util/UnsignedIntLEByteValue.java  |  32 +-
 .../ads/api/util/UnsignedShortLEByteValue.java     |  32 +-
 .../plc4x/java/ads/api/util/package-info.java      |  32 +-
 .../apache/plc4x/java/ads/model/AdsDataType.java   |  32 +-
 .../org/apache/plc4x/java/ads/model/AdsField.java  |  32 +-
 .../plc4x/java/ads/model/AdsPlcFieldHandler.java   |  32 +-
 .../java/ads/model/AdsSubscriptionHandle.java      |  34 +-
 .../plc4x/java/ads/model/DirectAdsField.java       |  32 +-
 .../plc4x/java/ads/model/SymbolicAdsField.java     |  32 +-
 .../apache/plc4x/java/ads/model/package-info.java  |  32 +-
 .../java/ads/protocol/Ads2PayloadProtocol.java     |  32 +-
 .../java/ads/protocol/Payload2SerialProtocol.java  |  32 +-
 .../java/ads/protocol/Payload2TcpProtocol.java     |  32 +-
 .../plc4x/java/ads/protocol/Plc4x2AdsProtocol.java |  32 +-
 .../java/ads/protocol/exception/AdsException.java  |  32 +-
 .../exception/AdsProtocolOverflowException.java    |  33 +-
 .../plc4x/java/ads/protocol/package-info.java      |  32 +-
 .../plc4x/java/ads/protocol/util/DigestUtil.java   |  32 +-
 .../ads/protocol/util/LittleEndianDecoder.java     |  32 +-
 .../ads/protocol/util/LittleEndianEncoder.java     |  32 +-
 .../protocol/util/SingleMessageRateLimiter.java    |  32 +-
 .../plc4x/java/ads/protocol/util/package-info.java |  32 +-
 .../util/LittleEndianDecoderSpecHurz.groovy        |  33 +-
 .../util/LittleEndianEncoderSpecHurz.groovy        |  33 +-
 .../java/org/apache/plc4x/java/ads/AdsDumper.java  |  32 +-
 .../apache/plc4x/java/ads/ManualPlc4XAdsTest.java  |  32 +-
 .../AdsDeviceNotificationResponseTest.java         |  33 +-
 .../ads/api/commands/CommandFactoryMethodTest.java |  32 +-
 .../commands/types/AdsNotificationSampleTest.java  |  32 +-
 .../ads/api/commands/types/AdsStampHeaderTest.java |  32 +-
 .../types/CommandTypesFactoryMethodTest.java       |  32 +-
 .../java/ads/api/commands/types/DeviceTest.java    |  32 +-
 .../java/ads/api/commands/types/LengthTest.java    |  32 +-
 .../ads/api/generic/GenericFactoryMethodTest.java  |  32 +-
 .../java/ads/api/generic/types/AmsErrorTest.java   |  32 +-
 .../java/ads/api/generic/types/AmsNetIdTest.java   |  32 +-
 .../java/ads/api/generic/types/AmsPortTest.java    |  32 +-
 .../java/ads/api/generic/types/CommandTest.java    |  32 +-
 .../types/GenericTypesFactoryMethodTest.java       |  32 +-
 .../java/ads/api/generic/types/StateTest.java      |  32 +-
 .../java/ads/api/generic/types/TcpLengthTest.java  |  32 +-
 .../ads/api/serial/SerialFactoryMethodTest.java    |  32 +-
 .../types/GenericTypesFactoryMethodTest.java       |  32 +-
 .../java/ads/api/tcp/TcpFactoryMethodTest.java     |  32 +-
 .../tcp/types/GenericTypesFactoryMethodTest.java   |  32 +-
 .../plc4x/java/ads/api/util/ByteValueTest.java     |  32 +-
 .../java/ads/model/AdsPlcFieldHandlerTest.java     |  33 +-
 .../plc4x/java/ads/model/DirectAdsFieldTest.java   |  32 +-
 .../java/ads/protocol/AbstractProtocolTest.java    |  32 +-
 .../java/ads/protocol/Ads2PayloadProtocolTest.java |  32 +-
 ...load2SerialProtocolExampleConversationTest.java |  32 +-
 .../ads/protocol/Payload2SerialProtocolTest.java   |  32 +-
 .../java/ads/protocol/Payload2TcpProtocolTest.java |  32 +-
 .../java/ads/protocol/Plc4x2AdsProtocolTest.java   |  32 +-
 .../java/ads/protocol/util/DigestUtilTest.java     |  32 +-
 plc4j/protocols/ads/src/test/resources/logback.xml |  28 +-
 plc4j/protocols/benchmarks/README.md               |  28 +-
 plc4j/protocols/benchmarks/pom.xml                 |   2 +-
 .../java/ads/protocol/ADSProtocolBenchmark.java    |  33 +-
 .../benchmarks/src/main/resources/logback.xml      |   2 +-
 .../java/org/apache/plc4x/java/deltav/PoCES.java   |  35 +-
 .../org/apache/plc4x/java/deltav/PoCInflux.java    |  33 +-
 plc4j/protocols/pom.xml                            |  28 +-
 plc4j/spi/pom.xml                                  |  33 +-
 .../apache/plc4x/java/spi/ConversationContext.java |   1 -
 .../apache/plc4x/java/spi/Plc4xNettyWrapper.java   |   1 -
 .../apache/plc4x/java/spi/Plc4xProtocolBase.java   |   1 -
 .../java/spi/configuration/Configuration.java      |  34 +-
 .../spi/configuration/ConfigurationFactory.java    |   1 -
 .../ConfigurationParameterConverter.java           |  34 +-
 .../java/spi/configuration/HasConfiguration.java   |   1 -
 .../annotations/ConfigurationParameter.java        |   1 -
 .../annotations/ParameterConverter.java            |   1 -
 .../spi/configuration/annotations/Required.java    |   1 -
 .../annotations/defaults/BooleanDefaultValue.java  |   1 -
 .../annotations/defaults/DoubleDefaultValue.java   |   1 -
 .../annotations/defaults/FloatDefaultValue.java    |   1 -
 .../annotations/defaults/IntDefaultValue.java      |   1 -
 .../annotations/defaults/LongDefaultValue.java     |   1 -
 .../annotations/defaults/StringDefaultValue.java   |   1 -
 .../exceptions/ConfigurationException.java         |  34 +-
 .../spi/connection/ChannelExposingConnection.java  |  34 +-
 .../java/spi/connection/GeneratedDriverBase.java   |   1 -
 .../connection/GeneratedProtocolMessageCodec.java  |   1 -
 .../java/spi/connection/NettyChannelFactory.java   |   1 -
 .../spi/connection/ProtocolStackConfigurer.java    |   1 -
 .../connection/SingleProtocolStackConfigurer.java  |   1 -
 .../plc4x/java/spi/context/DriverContext.java      |  34 +-
 .../plc4x/java/spi/discovery/ActiveDiscovery.java  |  34 +-
 .../java/spi/discovery/BroadcastDiscovery.java     |  34 +-
 .../plc4x/java/spi/discovery/PassiveDiscovery.java |  34 +-
 .../java/spi/discovery/SupportsDiscovery.java      |  34 +-
 .../plc4x/java/spi/generation/BufferCommons.java   |  33 +-
 .../java/spi/generation/EvaluationHelper.java      |   1 -
 .../apache/plc4x/java/spi/generation/Message.java  |   1 -
 .../plc4x/java/spi/generation/ParseException.java  |   1 -
 .../plc4x/java/spi/generation/ReadBuffer.java      |  33 +-
 .../java/spi/generation/ReadBufferByteBased.java   |   1 -
 .../java/spi/generation/ReadBufferJsonBased.java   |  33 +-
 .../java/spi/generation/ReadBufferXmlBased.java    |  33 +-
 .../plc4x/java/spi/generation/WithReaderArgs.java  |  33 +-
 .../java/spi/generation/WithReaderWriterArgs.java  |  33 +-
 .../plc4x/java/spi/generation/WithWriterArgs.java  |  33 +-
 .../plc4x/java/spi/generation/WriteBuffer.java     |  33 +-
 .../java/spi/generation/WriteBufferByteBased.java  |   1 -
 .../java/spi/generation/WriteBufferJsonBased.java  |  33 +-
 .../java/spi/generation/WriteBufferXmlBased.java   |  33 +-
 .../java/spi/generation/io/MyDefaultBitInput.java  |  33 +-
 .../java/spi/generation/io/MyDefaultBitOutput.java |  34 +-
 .../java/spi/internal/DefaultContextHandler.java   |  34 +-
 .../spi/internal/DefaultExpectRequestContext.java  |  34 +-
 .../spi/internal/DefaultSendRequestContext.java    |  33 +-
 .../java/spi/internal/HandlerRegistration.java     |   1 -
 .../java/spi/messages/DefaultPlcDiscoveryItem.java | 122 ++++++
 ...sponse.java => DefaultPlcDiscoveryRequest.java} |  47 ++-
 ...ponse.java => DefaultPlcDiscoveryResponse.java} |  38 +-
 .../spi/messages/DefaultPlcSubscriptionEvent.java  |   1 -
 .../{PlcReader.java => PlcDiscoverer.java}         |  15 +-
 .../java/spi/messages/utils/FieldValueItem.java    |  34 +-
 .../java/spi/messages/utils/ResponseItem.java      |  34 +-
 .../spi/model/DefaultPlcSubscriptionHandle.java    |   1 -
 .../plc4x/java/spi/optimizer/BaseOptimizer.java    |  34 +-
 .../java/spi/optimizer/SingleFieldOptimizer.java   |  34 +-
 .../spi/transaction/RequestTransactionManager.java |   1 -
 .../apache/plc4x/java/spi/transport/Transport.java |  34 +-
 .../java/spi/transport/TransportConfiguration.java |  34 +-
 .../apache/plc4x/java/spi/utils/Serializable.java  |  34 +-
 .../java/spi/values/IEC61131ValueHandler.java      |   1 -
 .../org/apache/plc4x/java/spi/values/PlcBOOL.java  |   1 -
 .../org/apache/plc4x/java/spi/values/PlcBYTE.java  |   1 -
 .../plc4x/java/spi/values/PlcBigDecimal.java       |   1 -
 .../plc4x/java/spi/values/PlcBigInteger.java       |   1 -
 .../apache/plc4x/java/spi/values/PlcBitString.java |   1 -
 .../org/apache/plc4x/java/spi/values/PlcCHAR.java  |   1 -
 .../org/apache/plc4x/java/spi/values/PlcDATE.java  |   1 -
 .../plc4x/java/spi/values/PlcDATE_AND_TIME.java    |   1 -
 .../org/apache/plc4x/java/spi/values/PlcDINT.java  |   1 -
 .../org/apache/plc4x/java/spi/values/PlcDWORD.java |   1 -
 .../apache/plc4x/java/spi/values/PlcIECValue.java  |   1 -
 .../org/apache/plc4x/java/spi/values/PlcINT.java   |   1 -
 .../org/apache/plc4x/java/spi/values/PlcLINT.java  |   1 -
 .../org/apache/plc4x/java/spi/values/PlcLREAL.java |   1 -
 .../org/apache/plc4x/java/spi/values/PlcLTIME.java |  34 +-
 .../org/apache/plc4x/java/spi/values/PlcLWORD.java |   1 -
 .../org/apache/plc4x/java/spi/values/PlcList.java  |   1 -
 .../org/apache/plc4x/java/spi/values/PlcNull.java  |  34 +-
 .../org/apache/plc4x/java/spi/values/PlcREAL.java  |   1 -
 .../org/apache/plc4x/java/spi/values/PlcSINT.java  |   1 -
 .../apache/plc4x/java/spi/values/PlcSTRING.java    |   1 -
 .../plc4x/java/spi/values/PlcSimpleValue.java      |   1 -
 .../apache/plc4x/java/spi/values/PlcStruct.java    |   1 -
 .../org/apache/plc4x/java/spi/values/PlcTIME.java  |  34 +-
 .../plc4x/java/spi/values/PlcTIME_OF_DAY.java      |   1 -
 .../org/apache/plc4x/java/spi/values/PlcUDINT.java |   1 -
 .../org/apache/plc4x/java/spi/values/PlcUINT.java  |   1 -
 .../org/apache/plc4x/java/spi/values/PlcULINT.java |   1 -
 .../org/apache/plc4x/java/spi/values/PlcUSINT.java |   1 -
 .../apache/plc4x/java/spi/values/PlcValues.java    |   1 -
 .../org/apache/plc4x/java/spi/values/PlcWCHAR.java |   1 -
 .../org/apache/plc4x/java/spi/values/PlcWORD.java  |   1 -
 .../internal/DefaultSendRequestContextTest.java    |  33 +-
 .../optimizer/RequestTransactionManagerTest.java   |   1 -
 .../java/spi/parser/ConnectionParserTest.java      |   1 -
 plc4j/tools/capture-replay/pom.xml                 |  28 +-
 .../java/utils/capturereplay/CaptureReplay.java    |  34 +-
 .../plc4x/java/utils/capturereplay/CliOptions.java |  33 +-
 .../capture-replay/src/main/resources/logback.xml  |  28 +-
 plc4j/tools/connection-cache/pom.xml               |  28 +-
 .../utils/connectionpool2/CachedDriverManager.java |   1 -
 .../connectionpool2/CachedDriverManagerMBean.java  |   1 -
 .../utils/connectionpool2/CachedPlcConnection.java |   1 -
 .../utils/connectionpool2/CachedReadRequest.java   |   1 -
 .../connectionpool2/CachedReadRequestBuilder.java  |   1 -
 .../connectionpool2/PlcConnectionFactory.java      |   1 -
 .../utils/connectionpool2/PooledDriverManager.java |   1 -
 .../connectionpool2/PooledDriverManagerMBean.java  |   1 -
 .../connectionpool2/CachedDriverManagerIT.java     |   1 -
 .../connectionpool2/CachedDriverManagerMT.java     |   1 -
 .../connectionpool2/CachedDriverManagerTest.java   |   1 -
 .../connectionpool2/CachedPlcConnectionTest.java   |   1 -
 .../connectionpool2/PooledDriverManagerTest.java   |   1 -
 .../src/test/resources/logback.xml                 |  28 +-
 plc4j/tools/connection-pool/pom.xml                |  28 +-
 .../plc4x/java/utils/connectionpool/PoolKey.java   |  33 +-
 .../java/utils/connectionpool/PoolKeyFactory.java  |  33 +-
 .../connectionpool/PooledPlcConnectionFactory.java |   1 -
 .../connectionpool/PooledPlcDriverManager.java     |   1 -
 .../utils/connectionpool/PoolKeyFactoryTest.java   |  33 +-
 .../utils/connectionpool/PooledDummyDriver.java    |   1 -
 .../connectionpool/PooledPlcDriverManagerTest.java |   1 -
 .../connection-pool/src/test/resources/logback.xml |  30 +-
 plc4j/tools/opm/pom.xml                            |   2 +-
 .../org/apache/plc4x/java/opm/AliasRegistry.java   |   1 -
 .../org/apache/plc4x/java/opm/OPMException.java    |  33 +-
 .../java/org/apache/plc4x/java/opm/OpmUtils.java   |  33 +-
 .../java/org/apache/plc4x/java/opm/PlcEntity.java  |  33 +-
 .../plc4x/java/opm/PlcEntityInterceptor.java       |   1 -
 .../apache/plc4x/java/opm/PlcEntityManager.java    |  33 +-
 .../java/org/apache/plc4x/java/opm/PlcField.java   |  33 +-
 .../apache/plc4x/java/opm/SimpleAliasRegistry.java |   1 -
 plc4j/tools/opm/src/site/site.xml                  |  32 +-
 .../apache/plc4x/java/opm/ConnectedEntityTest.java |   1 -
 .../apache/plc4x/java/opm/OPMExceptionTest.java    |  33 +-
 .../org/apache/plc4x/java/opm/OpmUtilsTest.java    |   1 -
 .../plc4x/java/opm/PlcEntityInterceptorTest.java   |   1 -
 .../java/opm/PlcEntityManagerComplexTest.java      |  33 +-
 .../plc4x/java/opm/PlcEntityManagerTest.java       |   1 -
 .../plc4x/java/opm/SimpleAliasRegistryTest.java    |   1 -
 plc4j/tools/opm/src/test/resources/logback.xml     |   2 +-
 plc4j/tools/pom.xml                                |  28 +-
 plc4j/tools/scraper/README.md                      |  28 +-
 plc4j/tools/scraper/pom.xml                        |  33 +-
 .../apache/plc4x/java/scraper/ResultHandler.java   |   1 -
 .../org/apache/plc4x/java/scraper/ScrapeJob.java   |   1 -
 .../apache/plc4x/java/scraper/ScrapeJobImpl.java   |   1 -
 .../org/apache/plc4x/java/scraper/Scraper.java     |   1 -
 .../org/apache/plc4x/java/scraper/ScraperImpl.java |   1 -
 .../org/apache/plc4x/java/scraper/ScraperTask.java |   1 -
 .../apache/plc4x/java/scraper/ScraperTaskImpl.java |   1 -
 .../java/scraper/config/JobConfiguration.java      |   1 -
 .../config/JobConfigurationClassicImpl.java        |   1 -
 .../config/JobConfigurationClassicImplBuilder.java |   1 -
 .../java/scraper/config/JobConfigurationImpl.java  |   1 -
 .../java/scraper/config/ScraperConfiguration.java  |   1 -
 .../config/ScraperConfigurationClassicImpl.java    |   1 -
 .../ScraperConfigurationClassicImplBuilder.java    |   1 -
 .../JobConfigurationTriggeredImpl.java             |   1 -
 .../JobConfigurationTriggeredImplBuilder.java      |   1 -
 .../ScraperConfigurationTriggeredImpl.java         |   1 -
 .../ScraperConfigurationTriggeredImplBuilder.java  |   1 -
 .../exception/ScraperConfigurationException.java   |   1 -
 .../java/scraper/exception/ScraperException.java   |   1 -
 .../triggeredscraper/TriggeredScrapeJobImpl.java   |   1 -
 .../triggeredscraper/TriggeredScraperImpl.java     |   1 -
 .../triggeredscraper/TriggeredScraperMBean.java    |   1 -
 .../triggeredscraper/TriggeredScraperTask.java     |   1 -
 .../TriggeredScraperTaskMBean.java                 |   1 -
 .../triggerhandler/TriggerConfiguration.java       |   3 +-
 .../scraper/util/PercentageAboveThreshold.java     |   1 -
 .../apache/plc4x/java/s7/ManualS7PlcDriverMT.java  |   1 -
 .../java/scraper/ScraperConfigurationTest.java     |   1 -
 .../apache/plc4x/java/scraper/ScraperRunner.java   |   1 -
 .../apache/plc4x/java/scraper/ScraperTaskTest.java |   1 -
 .../org/apache/plc4x/java/scraper/ScraperTest.java |   1 -
 .../plc4x/java/scraper/TriggeredScraperRunner.java |   1 -
 .../java/scraper/TriggeredScraperRunnerModbus.java |   1 -
 .../config/ScraperConfigurationBuilderTest.java    |   1 -
 .../triggeredscraper/TriggeredScraperImplTest.java |   1 -
 .../triggerhandler/TriggerConfigurationTest.java   |   1 -
 .../scraper/src/test/resources/logback-test.xml    |  32 +-
 plc4j/tools/scraper/src/test/resources/logback.xml |  32 +-
 plc4j/transports/pcap-replay/pom.xml               |  28 +-
 .../pcapreplay/PcapReplayChannelFactory.java       |  34 +-
 .../transport/pcapreplay/PcapReplayTransport.java  |  34 +-
 .../PcapReplayTransportConfiguration.java          |  34 +-
 .../org.apache.plc4x.java.spi.transport.Transport  |   1 -
 plc4j/transports/pcap-shared/pom.xml               |  28 +-
 .../transport/pcap/PcapTransportConfiguration.java |  34 +-
 plc4j/transports/pom.xml                           |  28 +-
 plc4j/transports/raw-socket/pom.xml                |  28 +-
 .../rawsocket/RawSocketChannelFactory.java         |  34 +-
 .../transport/rawsocket/RawSocketTransport.java    |  38 +-
 .../rawsocket/RawSocketTransportConfiguration.java |  34 +-
 .../org.apache.plc4x.java.spi.transport.Transport  |   1 -
 plc4j/transports/serial/pom.xml                    |  28 +-
 .../plc4x/java/transport/serial/SerialChannel.java |   1 -
 .../java/transport/serial/SerialChannelConfig.java |  34 +-
 .../transport/serial/SerialChannelFactory.java     |  34 +-
 .../transport/serial/SerialChannelHandler.java     |   1 -
 .../transport/serial/SerialChannelOptions.java     |  34 +-
 .../transport/serial/SerialPollingSelector.java    |   1 -
 .../java/transport/serial/SerialSelectionKey.java  |   1 -
 .../transport/serial/SerialSelectorProvider.java   |   1 -
 .../java/transport/serial/SerialSocketAddress.java |   1 -
 .../java/transport/serial/SerialSocketChannel.java |   1 -
 .../java/transport/serial/SerialTransport.java     |  34 +-
 .../serial/SerialTransportConfiguration.java       |  34 +-
 .../org.apache.plc4x.java.spi.transport.Transport  |   1 -
 .../base/connection/SerialChannelFactoryTest.java  |   1 -
 plc4j/transports/socketcan/pom.xml                 |  28 +-
 .../socketcan/CANTransportConfiguration.java       |  34 +-
 .../socketcan/SocketCANChannelFactory.java         |  34 +-
 .../transport/socketcan/SocketCANTransport.java    |  34 +-
 .../socketcan/netty/SocketCANChannel.java          |   1 -
 .../socketcan/netty/SocketCANChannelConfig.java    |  34 +-
 .../socketcan/netty/address/SocketCANAddress.java  |  34 +-
 .../org.apache.plc4x.java.spi.transport.Transport  |   1 -
 plc4j/transports/tcp/pom.xml                       |  28 +-
 .../java/transport/tcp/TcpChannelFactory.java      |  34 +-
 .../plc4x/java/transport/tcp/TcpTransport.java     |  34 +-
 .../transport/tcp/TcpTransportConfiguration.java   |   1 -
 .../org.apache.plc4x.java.spi.transport.Transport  |   1 -
 plc4j/transports/test/pom.xml                      |  28 +-
 .../java/io/netty/bootstrap/EmbeddedBootstrap.java |  34 +-
 .../java/io/netty/bootstrap/EventLoopProvider.java |  34 +-
 .../java/transport/test/TestChannelFactory.java    |  34 +-
 .../java/transport/test/TestSocketAddress.java     |   1 -
 .../plc4x/java/transport/test/TestTransport.java   |  34 +-
 .../transport/test/TestTransportConfiguration.java |  34 +-
 .../src/main/remote-resources/META-INF/LICENSE     |   7 +
 .../src/main}/remote-resources/META-INF/NOTICE     |   0
 .../org.apache.plc4x.java.spi.transport.Transport  |   1 -
 plc4j/transports/udp/pom.xml                       |  28 +-
 .../java/transport/udp/UdpChannelFactory.java      |  34 +-
 .../plc4x/java/transport/udp/UdpTransport.java     |  34 +-
 .../transport/udp/UdpTransportConfiguration.java   |  34 +-
 .../udp/protocol/DatagramUnpackingHandler.java     |  34 +-
 .../org.apache.plc4x.java.spi.transport.Transport  |   1 -
 plc4j/utils/pcap-replay/pom.xml                    |  28 +-
 .../utils/pcapreplay/netty/PcapReplayChannel.java  |   1 -
 .../netty/address/PcapReplayAddress.java           |  34 +-
 .../netty/config/PcapReplayChannelConfig.java      |  34 +-
 .../netty/config/PcapReplayChannelOption.java      |  34 +-
 plc4j/utils/pcap-shared/pom.xml                    |  28 +-
 .../pcap/netty/address/PcapSocketAddress.java      |  34 +-
 .../utils/pcap/netty/config/PcapChannelConfig.java |  34 +-
 .../utils/pcap/netty/config/PcapChannelOption.java |  34 +-
 .../utils/pcap/netty/handlers/PacketHandler.java   |  34 +-
 .../pcap/netty/handlers/TcpIpPacketHandler.java    |  34 +-
 .../pcap/netty/handlers/UdpIpPacketHandler.java    |  34 +-
 .../src/main/remote-resources/META-INF/LICENSE     |   6 +
 .../src/main}/remote-resources/META-INF/NOTICE     |   0
 plc4j/utils/pom.xml                                |  28 +-
 plc4j/utils/raw-sockets/pom.xml                    |  28 +-
 .../utils/rawsockets/netty/RawSocketChannel.java   |   1 -
 .../rawsockets/netty/address/RawSocketAddress.java |  34 +-
 .../netty/config/RawSocketChannelConfig.java       |  34 +-
 .../src/remote-resources/META-INF/LICENSE          |   1 +
 .../rawsockets/netty/RawSocketChannelTest.java     |   1 -
 plc4j/utils/test-utils/pom.xml                     |  28 +-
 .../main/java/org/apache/plc4x/test/FastTests.java |  34 +-
 .../plc4x/test/RequireInternetConnection.java      |  33 +-
 .../test/RequireInternetConnectionCondition.java   |  33 +-
 .../apache/plc4x/test/RequireNonCaptureAllDns.java |  33 +-
 .../test/RequireNonCaptureAllDnsCondition.java     |  33 +-
 .../java/org/apache/plc4x/test/RequirePcap.java    |  33 +-
 .../apache/plc4x/test/RequirePcapCondition.java    |  33 +-
 .../java/org/apache/plc4x/test/RequirePcapNg.java  |  33 +-
 .../apache/plc4x/test/RequirePcapNgCondition.java  |  33 +-
 .../org/apache/plc4x/test/XmlTestsuiteLoader.java  |  32 +-
 .../test/dom4j/LocationAwareDocumentFactory.java   |  32 +-
 .../plc4x/test/dom4j/LocationAwareElement.java     |  32 +-
 .../test/dom4j/LocationAwareSAXContentHandler.java |  32 +-
 .../plc4x/test/dom4j/LocationAwareSAXReader.java   |  32 +-
 .../plc4x/test/driver/DriverTestsuiteRunner.java   |  34 +-
 .../exceptions/DriverTestsuiteException.java       |  33 +-
 .../test/driver/internal/ConnectionManager.java    |  34 +-
 .../test/driver/internal/DriverTestsuite.java      |  34 +-
 .../internal/DriverTestsuiteConfiguration.java     |  34 +-
 .../plc4x/test/driver/internal/StepType.java       |  34 +-
 .../plc4x/test/driver/internal/TestStep.java       |  34 +-
 .../plc4x/test/driver/internal/Testcase.java       |  34 +-
 .../plc4x/test/driver/internal/api/TestField.java  |  34 +-
 .../test/driver/internal/api/TestFieldRequest.java |  34 +-
 .../test/driver/internal/api/TestReadRequest.java  |  34 +-
 .../test/driver/internal/api/TestRequest.java      |  34 +-
 .../test/driver/internal/api/TestValueField.java   |  34 +-
 .../test/driver/internal/api/TestWriteRequest.java |  34 +-
 .../internal/handlers/ApiRequestHandler.java       |  34 +-
 .../internal/handlers/ApiResponseHandler.java      |  34 +-
 .../internal/handlers/IncomingPlcBytesHandler.java |  34 +-
 .../handlers/IncomingPlcMessageHandler.java        |  34 +-
 .../internal/handlers/OutgoingPlcBytesHandler.java |  34 +-
 .../handlers/OutgoingPlcMessageHandler.java        |  34 +-
 .../plc4x/test/driver/internal/utils/Delay.java    |  34 +-
 .../test/driver/internal/utils/Synchronizer.java   |  34 +-
 .../driver/internal/validator/ApiValidator.java    |   1 -
 .../org/apache/plc4x/test/manual/ManualTest.java   |  34 +-
 .../plc4x/test/migration/MessageResolver.java      |   1 -
 .../migration/MessageValidatorAndMigrator.java     |   1 -
 .../plc4x/test/migration/MigrationException.java   |   1 -
 .../plc4x/test/migration/TestCasePatcher.java      |  34 +-
 .../java/org/apache/plc4x/test/model/Location.java |  32 +-
 .../org/apache/plc4x/test/model/LocationAware.java |  32 +-
 .../ParserSerializerTestsuiteRunner.java           |  33 +-
 .../ParserSerializerTestsuiteException.java        |  33 +-
 .../model/ParserSerializerTestsuite.java           |  33 +-
 .../test/parserserializer/model/Testcase.java      |  33 +-
 .../java/org/apache/plc4x/test/xml/XmlHelper.java  |  34 +-
 .../test-utils/src/main/resources/logback.xml      |  28 +-
 pom.xml                                            |  31 +-
 protocols/ab-eth/pom.xml                           |  32 +-
 .../apache/plc4x/protocol/abeth/ABETHProtocol.java |   1 -
 .../main/resources/protocols/abeth/ab-eth.mspec    |  36 +-
 protocols/ads/pom.xml                              |   2 +-
 .../plc4x/protocol/ads/ADSDiscoveryProtocol.java   |  33 +-
 .../org/apache/plc4x/protocol/ads/ADSProtocol.java |  33 +-
 .../resources/protocols/ads/ads-discovery.mspec    |  36 +-
 .../ads/src/main/resources/protocols/ads/ads.mspec |  36 +-
 protocols/bacnetip/pom.xml                         |  32 +-
 .../plc4x/protocol/bacnetip/BacNetIpProtocol.java  |   1 -
 .../resources/protocols/bacnetip/bacnetip.mspec    |  36 +-
 protocols/canopen/pom.xml                          |   2 +-
 .../plc4x/protocol/canopen/CANOpenProtocol.java    |  33 +-
 .../src/main/resources/protocols/can/canopen.mspec |   2 +-
 protocols/df1/pom.xml                              |  32 +-
 .../org/apache/plc4x/protocol/df1/Df1Protocol.java |   1 -
 .../df1/src/main/resources/protocols/df1/df1.mspec |  36 +-
 protocols/eip/pom.xml                              |  32 +-
 .../org/apache/plc4x/protocol/eip/EipProtocol.java |   1 -
 .../eip/src/main/resources/protocols/eip/eip.mspec |  42 +--
 protocols/firmata/pom.xml                          |  32 +-
 .../plc4x/protocol/firmata/FirmataProtocol.java    |   1 -
 .../main/resources/protocols/firmata/firmata.mspec |  36 +-
 .../plc4x/protocol/knxnetip/KnxNetIpProtocol.java  |  33 +-
 .../resources/protocols/knxnetip/device-info.mspec |  36 +-
 .../resources/protocols/knxnetip/knxnetip.mspec    |  36 +-
 .../src/main/script/getKnxMasterData.groovy        |  39 +-
 .../protocol/knxnetip/KnxDefinitionsGenerator.java |  33 +-
 .../knxnetip/KnxSpecificationStoreUpdater.java     |  33 +-
 .../knxnetip/handlers/ManufacturerIdsHandler.java  |  33 +-
 .../handlers/ProductDescriptionHandler.java        |  33 +-
 .../plc4x/protocol/modbus/ModbusProtocol.java      |  33 +-
 .../main/resources/protocols/modbus/modbus.mspec   |  36 +-
 protocols/opcua/pom.xml                            | 416 +++++++++++----------
 .../apache/plc4x/protocol/opcua/OpcuaProtocol.java |  33 +-
 .../src/main/resources/protocols/opcua/opcua.mspec |  36 +-
 protocols/opcua/src/main/xslt/opc-manual.xsl       |  13 +-
 protocols/opcua/src/main/xslt/opc-services.xsl     |  12 +-
 protocols/opcua/src/main/xslt/opc-status.xsl       |  12 +-
 .../src/main/resources/protocols/plc4x/plc4x.mspec |  36 +-
 protocols/pom.xml                                  |   1 +
 protocols/{s7 => profinet}/pom.xml                 |   6 +-
 .../plc4x/protocol/profinet/ProfinetProtocol.java} |   9 +-
 ...e.plc4x.plugins.codegenerator.protocol.Protocol |   2 +-
 .../resources/protocols/profinet/profinet.mspec    | 355 ++++++++++++++++++
 .../org/apache/plc4x/protocol/s7/S7Protocol.java   |  33 +-
 .../s7/src/main/resources/protocols/s7/s7.mspec    |  36 +-
 .../protocol/simulated/SimulatedProtocol.java      |  33 +-
 .../resources/protocols/simulated/simulated.mspec  |  36 +-
 sandbox/code-gen/src/main/antlr4/imaginary.g4      |  34 +-
 .../java/org/apache/plc4x/codegen/DFDLUtil.java    |  34 +-
 .../java/org/apache/plc4x/codegen/api/Buffer.java  |  34 +-
 .../org/apache/plc4x/codegen/ast/AbstractNode.java |  34 +-
 .../plc4x/codegen/ast/AssignementExpression.java   |  34 +-
 .../apache/plc4x/codegen/ast/BinaryExpression.java |  34 +-
 .../java/org/apache/plc4x/codegen/ast/Block.java   |  34 +-
 .../org/apache/plc4x/codegen/ast/BlockBuilder.java |  34 +-
 .../apache/plc4x/codegen/ast/CallExpression.java   |  34 +-
 .../apache/plc4x/codegen/ast/ClassDeclaration.java |  34 +-
 .../org/apache/plc4x/codegen/ast/CodeWriter.java   |  34 +-
 .../plc4x/codegen/ast/ConstantExpression.java      |  34 +-
 .../plc4x/codegen/ast/ConstructorDeclaration.java  |  34 +-
 .../plc4x/codegen/ast/DeclarationStatement.java    |  34 +-
 .../apache/plc4x/codegen/ast/ExceptionType.java    |  34 +-
 .../org/apache/plc4x/codegen/ast/Expression.java   |  34 +-
 .../org/apache/plc4x/codegen/ast/Expressions.java  |  34 +-
 .../apache/plc4x/codegen/ast/FieldDeclaration.java |  34 +-
 .../apache/plc4x/codegen/ast/FieldReference.java   |  34 +-
 .../org/apache/plc4x/codegen/ast/FileNode.java     |  34 +-
 .../org/apache/plc4x/codegen/ast/Generator.java    |  34 +-
 .../org/apache/plc4x/codegen/ast/IfStatement.java  |  34 +-
 .../apache/plc4x/codegen/ast/JavaGenerator.java    |  34 +-
 .../org/apache/plc4x/codegen/ast/LineComment.java  |  34 +-
 .../java/org/apache/plc4x/codegen/ast/Method.java  |  34 +-
 .../apache/plc4x/codegen/ast/MethodDefinition.java |  34 +-
 .../org/apache/plc4x/codegen/ast/Modifier.java     |  34 +-
 .../apache/plc4x/codegen/ast/NewExpression.java    |  34 +-
 .../java/org/apache/plc4x/codegen/ast/Node.java    |  34 +-
 .../org/apache/plc4x/codegen/ast/NodeVisitor.java  |  34 +-
 .../plc4x/codegen/ast/ParameterExpression.java     |  34 +-
 .../org/apache/plc4x/codegen/ast/Primitive.java    |  34 +-
 .../apache/plc4x/codegen/ast/PythonGenerator.java  |  34 +-
 .../apache/plc4x/codegen/ast/ReturnStatement.java  |  34 +-
 .../org/apache/plc4x/codegen/ast/Statement.java    |  34 +-
 .../apache/plc4x/codegen/ast/TypeDefinition.java   |  34 +-
 .../org/apache/plc4x/codegen/ast/TypeUtil.java     |  34 +-
 .../org/apache/plc4x/codegen/ast/UnknownType.java  |  34 +-
 .../plc4x/codegen/python/AbstractNodeVisitor.java  |  34 +-
 .../org/apache/plc4x/codegen/python/AddNode.java   |  34 +-
 .../org/apache/plc4x/codegen/python/AliasNode.java |  34 +-
 .../plc4x/codegen/python/AnnAssignerNode.java      |  34 +-
 .../org/apache/plc4x/codegen/python/ArgNode.java   |  34 +-
 .../apache/plc4x/codegen/python/ArgumentsNode.java |  34 +-
 .../apache/plc4x/codegen/python/AssignNode.java    |  34 +-
 .../apache/plc4x/codegen/python/AttributeNode.java |  34 +-
 .../apache/plc4x/codegen/python/AugAssignNode.java |  34 +-
 .../org/apache/plc4x/codegen/python/BinOpNode.java |  34 +-
 .../org/apache/plc4x/codegen/python/CallNode.java  |  34 +-
 .../apache/plc4x/codegen/python/ClassDefNode.java  |  34 +-
 .../apache/plc4x/codegen/python/CodePrinter.java   |  34 +-
 .../apache/plc4x/codegen/python/CompareNode.java   |  34 +-
 .../apache/plc4x/codegen/python/ContextNode.java   |  34 +-
 .../org/apache/plc4x/codegen/python/EqNode.java    |  34 +-
 .../org/apache/plc4x/codegen/python/ExprNode.java  |  34 +-
 .../plc4x/codegen/python/FunctionDefNode.java      |  34 +-
 .../org/apache/plc4x/codegen/python/IfNode.java    |  34 +-
 .../plc4x/codegen/python/ImportFromNode.java       |  34 +-
 .../apache/plc4x/codegen/python/KeywordNode.java   |  34 +-
 .../apache/plc4x/codegen/python/LineEntryNode.java |  34 +-
 .../org/apache/plc4x/codegen/python/ListNode.java  |  34 +-
 .../org/apache/plc4x/codegen/python/LoadNode.java  |  34 +-
 .../apache/plc4x/codegen/python/ModuleNode.java    |  34 +-
 .../org/apache/plc4x/codegen/python/MultNode.java  |  34 +-
 .../plc4x/codegen/python/NameConstantNode.java     |  34 +-
 .../org/apache/plc4x/codegen/python/NameNode.java  |  34 +-
 .../java/org/apache/plc4x/codegen/python/Node.java |  34 +-
 .../apache/plc4x/codegen/python/NodeVisitor.java   |  34 +-
 .../org/apache/plc4x/codegen/python/NotEqNode.java |  34 +-
 .../org/apache/plc4x/codegen/python/NumNode.java   |  34 +-
 .../org/apache/plc4x/codegen/python/PassNode.java  |  34 +-
 .../apache/plc4x/codegen/python/ReturnNode.java    |  34 +-
 .../org/apache/plc4x/codegen/python/StoreNode.java |  34 +-
 .../org/apache/plc4x/codegen/python/StrNode.java   |  34 +-
 .../org/apache/plc4x/codegen/python/TupleNode.java |  34 +-
 .../org/apache/plc4x/codegen/python/WhileNode.java |  34 +-
 .../org/apache/plc4x/codegen/util/BufferUtil.java  |  34 +-
 .../org/apache/plc4x/codegen/util/EnumFactory.java |  34 +-
 .../org/apache/plc4x/codegen/util/PojoFactory.java |  34 +-
 .../org/apache/plc4x/codegen/DFDLUtilTest.java     |  34 +-
 .../org/apache/plc4x/codegen/ModuleNodeTest.java   |  34 +-
 .../java/org/apache/plc4x/codegen/PojoBuilder.java |  34 +-
 .../plc4x/codegen/ast/JavaGeneratorTest.java       |  34 +-
 .../plc4x/codegen/ast/PythonGeneratorTest.java     |  34 +-
 .../apache/plc4x/codegen/util/EnumFactoryTest.java |  34 +-
 .../java/org/apache/plc4x/codegen/util/MyPojo.java |  34 +-
 .../apache/plc4x/codegen/util/PojoFactoryTest.java |  34 +-
 .../plc4x/java/discovery/DiscoveryConnection.java  |  34 +-
 .../plc4x/java/discovery/DiscoveryDriver.java      |  32 +-
 .../java/discovery/DiscoveryFieldHandler.java      |  34 +-
 .../services/org.apache.plc4x.java.api.PlcDriver   |   1 -
 .../apache/plc4x/java/s7/utils/StaticHelper.java   |  34 +-
 .../org/apache/plc4x/simulator/PlcSimulator.java   |  34 +-
 .../simulator/exceptions/SimulatorExcepiton.java   |  34 +-
 .../org/apache/plc4x/simulator/model/Context.java  |  34 +-
 .../plc4x/simulator/server/ServerModule.java       |  34 +-
 .../plc4x/simulator/server/s7/S7ServerModule.java  |  34 +-
 .../server/s7/protocol/S7Step7ServerAdapter.java   |  34 +-
 .../simulator/simulation/SimulationModule.java     |  34 +-
 .../watertank/WaterTankSimulationModule.java       |  34 +-
 .../org.apache.plc4x.simulator.server.ServerModule |   1 -
 ...che.plc4x.simulator.simulation.SimulationModule |   1 -
 .../plc-simulator/src/main/resources/logback.xml   |   2 -
 sandbox/plc4cpp/README.md                          |  28 +-
 .../cpp/org/apache/plc4x/cpp/PlcConnection.cpp     |  32 +-
 .../main/cpp/org/apache/plc4x/cpp/PlcConnection.h  |  32 +-
 .../cpp/org/apache/plc4x/cpp/PlcDriverManager.cpp  |  34 +-
 .../cpp/org/apache/plc4x/cpp/PlcDriverManager.h    |  34 +-
 .../cpp/org/apache/plc4x/cpp/api/PlcConnection.cpp |  32 +-
 .../cpp/org/apache/plc4x/cpp/api/PlcConnection.h   |  32 +-
 .../cpp/api/authentication/PlcAuthentication.cpp   |  34 +-
 .../cpp/api/authentication/PlcAuthentication.h     |  34 +-
 .../PlcUsernamePasswordAuthentication.cpp          |  34 +-
 .../PlcUsernamePasswordAuthentication.h            |  34 +-
 .../cpp/api/exceptions/PlcConnectionException.cpp  |  34 +-
 .../cpp/api/exceptions/PlcConnectionException.h    |  34 +-
 .../plc4x/cpp/api/exceptions/PlcException.cpp      |  34 +-
 .../apache/plc4x/cpp/api/exceptions/PlcException.h |  34 +-
 .../cpp/api/exceptions/PlcFieldRangeException.cpp  |  34 +-
 .../cpp/api/exceptions/PlcFieldRangeException.h    |  34 +-
 .../PlcIncompatibleDatatypeException.cpp           |  34 +-
 .../exceptions/PlcIncompatibleDatatypeException.h  |  34 +-
 .../api/exceptions/PlcInvalidFieldException.cpp    |  34 +-
 .../cpp/api/exceptions/PlcInvalidFieldException.h  |  34 +-
 .../plc4x/cpp/api/exceptions/PlcIoException.cpp    |  34 +-
 .../plc4x/cpp/api/exceptions/PlcIoException.h      |  34 +-
 .../api/exceptions/PlcNotImplementedException.cpp  |  34 +-
 .../api/exceptions/PlcNotImplementedException.h    |  34 +-
 .../cpp/api/exceptions/PlcProtocolException.cpp    |  34 +-
 .../cpp/api/exceptions/PlcProtocolException.h      |  34 +-
 .../PlcProtocolPayloadTooBigException.cpp          |  34 +-
 .../exceptions/PlcProtocolPayloadTooBigException.h |  34 +-
 .../cpp/api/exceptions/PlcRuntimeException.cpp     |  34 +-
 .../plc4x/cpp/api/exceptions/PlcRuntimeException.h |  34 +-
 .../cpp/api/exceptions/PlcTimeoutException.cpp     |  34 +-
 .../plc4x/cpp/api/exceptions/PlcTimeoutException.h |  34 +-
 .../exceptions/PlcUnsupportedDataTypeException.cpp |  34 +-
 .../exceptions/PlcUnsupportedDataTypeException.h   |  34 +-
 .../PlcUnsupportedOperationException.cpp           |  34 +-
 .../exceptions/PlcUnsupportedOperationException.h  |  34 +-
 .../plc4x/cpp/api/messages/PlcFieldRequest.cpp     |  34 +-
 .../plc4x/cpp/api/messages/PlcFieldRequest.h       |  34 +-
 .../plc4x/cpp/api/messages/PlcFieldResponse.cpp    |  34 +-
 .../plc4x/cpp/api/messages/PlcFieldResponse.h      |  34 +-
 .../apache/plc4x/cpp/api/messages/PlcMessage.cpp   |  34 +-
 .../org/apache/plc4x/cpp/api/messages/PlcMessage.h |  34 +-
 .../plc4x/cpp/api/messages/PlcReadRequest.cpp      |  34 +-
 .../apache/plc4x/cpp/api/messages/PlcReadRequest.h |  34 +-
 .../cpp/api/messages/PlcReadRequestBuilder.cpp     |  34 +-
 .../plc4x/cpp/api/messages/PlcReadRequestBuilder.h |  34 +-
 .../plc4x/cpp/api/messages/PlcReadResponse.cpp     |  34 +-
 .../plc4x/cpp/api/messages/PlcReadResponse.h       |  34 +-
 .../apache/plc4x/cpp/api/messages/PlcRequest.cpp   |  34 +-
 .../org/apache/plc4x/cpp/api/messages/PlcRequest.h |  34 +-
 .../plc4x/cpp/api/messages/PlcRequestBuilder.cpp   |  34 +-
 .../plc4x/cpp/api/messages/PlcRequestBuilder.h     |  34 +-
 .../apache/plc4x/cpp/api/messages/PlcResponse.cpp  |  34 +-
 .../apache/plc4x/cpp/api/messages/PlcResponse.h    |  34 +-
 .../cpp/api/messages/PlcSubscriptionEvent.cpp      |  34 +-
 .../plc4x/cpp/api/messages/PlcSubscriptionEvent.h  |  34 +-
 .../cpp/api/messages/PlcSubscriptionRequest.cpp    |  34 +-
 .../cpp/api/messages/PlcSubscriptionRequest.h      |  34 +-
 .../cpp/api/messages/PlcSubscriptionResponse.cpp   |  34 +-
 .../cpp/api/messages/PlcSubscriptionResponse.h     |  34 +-
 .../cpp/api/messages/PlcUnsubscriptionRequest.cpp  |  34 +-
 .../cpp/api/messages/PlcUnsubscriptionRequest.h    |  34 +-
 .../cpp/api/messages/PlcUnsubscriptionResponse.cpp |  34 +-
 .../cpp/api/messages/PlcUnsubscriptionResponse.h   |  34 +-
 .../plc4x/cpp/api/messages/PlcWriteRequest.cpp     |  34 +-
 .../plc4x/cpp/api/messages/PlcWriteRequest.h       |  34 +-
 .../plc4x/cpp/api/messages/PlcWriteResponse.cpp    |  34 +-
 .../plc4x/cpp/api/messages/PlcWriteResponse.h      |  34 +-
 .../org/apache/plc4x/cpp/api/messages/REQUEST.cpp  |  34 +-
 .../org/apache/plc4x/cpp/api/messages/REQUEST.h    |  34 +-
 .../org/apache/plc4x/cpp/api/messages/RESPONSE.cpp |  34 +-
 .../org/apache/plc4x/cpp/api/messages/RESPONSE.h   |  34 +-
 .../plc4x/cpp/api/messages/RequestTemplate.cpp     |  34 +-
 .../plc4x/cpp/api/messages/RequestTemplate.h       |  34 +-
 .../plc4x/cpp/api/messages/ResponseTemplate.cpp    |  34 +-
 .../plc4x/cpp/api/messages/ResponseTemplate.h      |  34 +-
 .../cpp/api/metadata/PlcConnectionMetadata.cpp     |  34 +-
 .../plc4x/cpp/api/metadata/PlcConnectionMetadata.h |  34 +-
 .../org/apache/plc4x/cpp/api/model/Consumer.cpp    |  34 +-
 .../cpp/org/apache/plc4x/cpp/api/model/Consumer.h  |  34 +-
 .../cpp/api/model/PlcConsumerRegistration.cpp      |  34 +-
 .../plc4x/cpp/api/model/PlcConsumerRegistration.h  |  34 +-
 .../org/apache/plc4x/cpp/api/model/PlcField.cpp    |  34 +-
 .../cpp/org/apache/plc4x/cpp/api/model/PlcField.h  |  34 +-
 .../plc4x/cpp/api/model/PlcSubscriptionHandle.cpp  |  34 +-
 .../plc4x/cpp/api/model/PlcSubscriptionHandle.h    |  34 +-
 .../plc4x/cpp/api/types/PlcClientDataType.cpp      |  34 +-
 .../apache/plc4x/cpp/api/types/PlcClientDataType.h |  34 +-
 .../apache/plc4x/cpp/api/types/PlcResponseCode.cpp |  34 +-
 .../apache/plc4x/cpp/api/types/PlcResponseCode.h   |  34 +-
 .../plc4x/cpp/api/types/PlcSubscriptionType.cpp    |  34 +-
 .../plc4x/cpp/api/types/PlcSubscriptionType.h      |  34 +-
 .../apache/plc4x/cpp/api/types/ValueTypeObject.cpp |  34 +-
 .../apache/plc4x/cpp/api/types/ValueTypeObject.h   |  34 +-
 .../cpp/org/apache/plc4x/cpp/spi/PlcDriver.cpp     |  34 +-
 .../main/cpp/org/apache/plc4x/cpp/spi/PlcDriver.h  |  34 +-
 .../cpp/org/apache/plc4x/cpp/proxy/ProxyDriver.cpp |  34 +-
 .../cpp/org/apache/plc4x/cpp/proxy/ProxyDriver.h   |  34 +-
 .../plc4x/cpp/proxy/connection/ProxyConnection.cpp |  34 +-
 .../plc4x/cpp/proxy/connection/ProxyConnection.h   |  34 +-
 .../cpp/org/apache/plc4x/cpp/proxy/dllexports.cpp  |  34 +-
 .../cpp/org/apache/plc4x/cpp/proxy/dllexports.h    |  34 +-
 .../cpp/org/apache/plc4x/cpp/s7/S7PlcDriver.cpp    |  34 +-
 .../main/cpp/org/apache/plc4x/cpp/s7/S7PlcDriver.h |  34 +-
 .../plc4x/cpp/s7/connection/S7PlcConnection.cpp    |  34 +-
 .../plc4x/cpp/s7/connection/S7PlcConnection.h      |  34 +-
 .../cpp/org/apache/plc4x/cpp/s7/dllexports.cpp     |  34 +-
 .../main/cpp/org/apache/plc4x/cpp/s7/dllexports.h  |  34 +-
 .../plc4x/cpp/examples/helloplc4x/helloplc4x.cpp   |  34 +-
 .../cpp/base/connection/AbstractPlcConnection.cpp  |  34 +-
 .../cpp/base/connection/AbstractPlcConnection.h    |  34 +-
 .../plc4x/cpp/base/connection/BoostConnection.cpp  |  34 +-
 .../plc4x/cpp/base/connection/BoostConnection.h    |  34 +-
 .../plc4x/cpp/base/connection/ChannelFactory.cpp   |  34 +-
 .../plc4x/cpp/base/connection/ChannelFactory.h     |  34 +-
 .../cpp/base/connection/DefaultPlcFieldHandler.cpp |  34 +-
 .../cpp/base/connection/DefaultPlcFieldHandler.h   |  34 +-
 .../plc4x/cpp/base/connection/PlcFieldHandler.cpp  |  34 +-
 .../plc4x/cpp/base/connection/PlcFieldHandler.h    |  34 +-
 .../apache/plc4x/cpp/base/events/ConnectEvent.cpp  |  34 +-
 .../apache/plc4x/cpp/base/events/ConnectEvent.h    |  34 +-
 .../plc4x/cpp/base/events/ConnectedEvent.cpp       |  34 +-
 .../apache/plc4x/cpp/base/events/ConnectedEvent.h  |  34 +-
 .../cpp/base/messages/DefaultPlcReadRequest.cpp    |  34 +-
 .../cpp/base/messages/DefaultPlcReadRequest.h      |  34 +-
 .../cpp/base/messages/DefaultPlcWriteRequest.cpp   |  34 +-
 .../cpp/base/messages/DefaultPlcWriteRequest.h     |  34 +-
 .../cpp/base/messages/InternalPlcFieldRequest.cpp  |  34 +-
 .../cpp/base/messages/InternalPlcFieldRequest.h    |  34 +-
 .../cpp/base/messages/InternalPlcFieldResponse.cpp |  34 +-
 .../cpp/base/messages/InternalPlcFieldResponse.h   |  34 +-
 .../messages/InternalPlcProprietaryRequest.cpp     |  34 +-
 .../base/messages/InternalPlcProprietaryRequest.h  |  34 +-
 .../messages/InternalPlcProprietaryResponse.cpp    |  34 +-
 .../base/messages/InternalPlcProprietaryResponse.h |  34 +-
 .../cpp/base/messages/InternalPlcReadRequest.cpp   |  34 +-
 .../cpp/base/messages/InternalPlcReadRequest.h     |  34 +-
 .../plc4x/cpp/base/messages/InternalPlcRequest.cpp |  34 +-
 .../plc4x/cpp/base/messages/InternalPlcRequest.h   |  34 +-
 .../cpp/base/messages/InternalPlcResponse.cpp      |  34 +-
 .../plc4x/cpp/base/messages/InternalPlcResponse.h  |  34 +-
 .../cpp/base/messages/InternalPlcWriteRequest.cpp  |  34 +-
 .../cpp/base/messages/InternalPlcWriteRequest.h    |  34 +-
 .../cpp/base/messages/PlcProprietaryRequest.cpp    |  34 +-
 .../cpp/base/messages/PlcProprietaryRequest.h      |  34 +-
 .../cpp/base/messages/PlcProprietaryResponse.cpp   |  34 +-
 .../cpp/base/messages/PlcProprietaryResponse.h     |  34 +-
 .../apache/plc4x/cpp/base/messages/PlcReader.cpp   |  34 +-
 .../org/apache/plc4x/cpp/base/messages/PlcReader.h |  34 +-
 .../apache/plc4x/cpp/base/messages/PlcWriter.cpp   |  34 +-
 .../org/apache/plc4x/cpp/base/messages/PlcWriter.h |  34 +-
 .../base/messages/items/BaseDefaultFieldItem.cpp   |  34 +-
 .../cpp/base/messages/items/BaseDefaultFieldItem.h |  34 +-
 .../messages/items/DefaultBigDecimalFieldItem.cpp  |  34 +-
 .../messages/items/DefaultBigDecimalFieldItem.h    |  34 +-
 .../messages/items/DefaultBigIntegerFieldItem.cpp  |  34 +-
 .../messages/items/DefaultBigIntegerFieldItem.h    |  34 +-
 .../messages/items/DefaultBooleanFieldItem.cpp     |  34 +-
 .../base/messages/items/DefaultBooleanFieldItem.h  |  34 +-
 .../messages/items/DefaultByteArrayFieldItem.cpp   |  34 +-
 .../messages/items/DefaultByteArrayFieldItem.h     |  34 +-
 .../base/messages/items/DefaultByteFieldItem.cpp   |  34 +-
 .../cpp/base/messages/items/DefaultByteFieldItem.h |  34 +-
 .../base/messages/items/DefaultDoubleFieldItem.cpp |  34 +-
 .../base/messages/items/DefaultDoubleFieldItem.h   |  34 +-
 .../base/messages/items/DefaultFloatFieldItem.cpp  |  34 +-
 .../base/messages/items/DefaultFloatFieldItem.h    |  34 +-
 .../messages/items/DefaultIntegerFieldItem.cpp     |  34 +-
 .../base/messages/items/DefaultIntegerFieldItem.h  |  34 +-
 .../messages/items/DefaultLocalDateFieldItem.cpp   |  34 +-
 .../messages/items/DefaultLocalDateFieldItem.h     |  34 +-
 .../items/DefaultLocalDateTimeFieldItem.cpp        |  34 +-
 .../messages/items/DefaultLocalDateTimeFieldItem.h |  34 +-
 .../messages/items/DefaultLocalTimeFieldItem.cpp   |  34 +-
 .../messages/items/DefaultLocalTimeFieldItem.h     |  34 +-
 .../base/messages/items/DefaultLongFieldItem.cpp   |  34 +-
 .../cpp/base/messages/items/DefaultLongFieldItem.h |  34 +-
 .../base/messages/items/DefaultShortFieldItem.cpp  |  34 +-
 .../base/messages/items/DefaultShortFieldItem.h    |  34 +-
 .../base/messages/items/DefaultStringFieldItem.cpp |  34 +-
 .../base/messages/items/DefaultStringFieldItem.h   |  34 +-
 .../apache/plc4x/cpp/s7/types/S7ControllerType.h   |  34 +-
 .../org/apache/plc4x/cpp/utils/logger/BLogger.cpp  |  34 +-
 .../org/apache/plc4x/cpp/utils/logger/BLogger.h    |  34 +-
 .../org/apache/plc4x/cpp/utils/logger/DatDmp.cpp   |  34 +-
 .../cpp/org/apache/plc4x/cpp/utils/logger/DatDmp.h |  34 +-
 .../org/apache/plc4x/cpp/utils/logger/DbgTrace.cpp |  34 +-
 .../org/apache/plc4x/cpp/utils/logger/DbgTrace.h   |  34 +-
 .../plc4x/cpp/utils/logger/ErrorCategory.cpp       |  34 +-
 .../apache/plc4x/cpp/utils/logger/ErrorCategory.h  |  34 +-
 .../plc4x/cpp/utils/logger/ErrorInfoException.cpp  |  34 +-
 .../plc4x/cpp/utils/logger/ErrorInfoException.h    |  34 +-
 .../org/apache/plc4x/cpp/utils/logger/ExLog.cpp    |  34 +-
 .../cpp/org/apache/plc4x/cpp/utils/logger/ExLog.h  |  34 +-
 .../cpp/utils/systemconfig/SystemConfiguration.cpp |  34 +-
 .../cpp/utils/systemconfig/SystemConfiguration.h   |  34 +-
 sandbox/plc4net/api/PlcDriverManager.cs            |  34 +-
 sandbox/plc4net/api/api/IPlcConnection.cs          |  34 +-
 sandbox/plc4net/api/api/IPlcDriver.cs              |  34 +-
 .../api/api/authentication/IPlcAuthentication.cs   |  34 +-
 .../PlcUsernamePasswordAuthentication.cs           |  34 +-
 .../api/api/metadata/IPlcConnectionMetadata.cs     |  34 +-
 .../api/exceptions/PlcConnectionException.cs       |  34 +-
 sandbox/plc4net/api/exceptions/PlcException.cs     |  34 +-
 .../api/exceptions/PlcInvalidFieldException.cs     |  34 +-
 sandbox/plc4net/api/messages/IPlcFieldRequest.cs   |  34 +-
 sandbox/plc4net/api/messages/IPlcFieldResponse.cs  |  34 +-
 sandbox/plc4net/api/messages/IPlcMessage.cs        |  34 +-
 sandbox/plc4net/api/messages/IPlcReadRequest.cs    |  34 +-
 .../plc4net/api/messages/IPlcReadRequestBuilder.cs |  34 +-
 sandbox/plc4net/api/messages/IPlcReadResponse.cs   |  34 +-
 sandbox/plc4net/api/messages/IPlcRequest.cs        |  34 +-
 sandbox/plc4net/api/messages/IPlcRequestBuilder.cs |  34 +-
 sandbox/plc4net/api/messages/IPlcResponse.cs       |  34 +-
 .../api/messages/IPlcSubscriptionEventArgs.cs      |  34 +-
 .../api/messages/IPlcSubscriptionRequest.cs        |  34 +-
 .../api/messages/IPlcSubscriptionRequestBuilder.cs |  34 +-
 .../api/messages/IPlcSubscriptionResponse.cs       |  34 +-
 .../api/messages/IPlcUnsubscriptionRequest.cs      |  34 +-
 .../messages/IPlcUnsubscriptionRequestBuilder.cs   |  34 +-
 .../api/messages/IPlcUnsubscriptionResponse.cs     |  34 +-
 sandbox/plc4net/api/messages/IPlcWriteRequest.cs   |  34 +-
 .../api/messages/IPlcWriteRequestBuilder.cs        |  34 +-
 sandbox/plc4net/api/model/IPlcField.cs             |  34 +-
 .../plc4net/api/model/IPlcSubscriptionHandle.cs    |  34 +-
 sandbox/plc4net/api/types/PlcResponseCode.cs       |  34 +-
 sandbox/plc4py/README.md                           |  28 +-
 sandbox/plc4py/pom.xml                             |  32 +-
 sandbox/plc4py/src/main/resources/lib/log4j2.xml   |  32 +-
 sandbox/test-java-bacnetip-driver/pom.xml          |  32 +-
 .../apache/plc4x/java/bacnetip/BacNetIpDriver.java |  34 +-
 .../configuration/BacNetIpConfiguration.java       |  34 +-
 .../apache/plc4x/java/bacnetip/ede/EdeParser.java  |  34 +-
 .../plc4x/java/bacnetip/ede/layouts/EdeLayout.java |  34 +-
 .../bacnetip/ede/layouts/EdeLayoutFactory.java     |  34 +-
 .../bacnetip/ede/layouts/EdeVersion2Layout.java    |  34 +-
 .../bacnetip/ede/layouts/EdeVersion3Layout.java    |  34 +-
 .../bacnetip/ede/layouts/EdeVersion4Layout.java    |  34 +-
 .../plc4x/java/bacnetip/ede/model/Datapoint.java   |  34 +-
 .../plc4x/java/bacnetip/ede/model/EdeModel.java    |  34 +-
 .../plc4x/java/bacnetip/field/BacNetIpField.java   |  34 +-
 .../java/bacnetip/field/BacNetIpFieldHandler.java  |  34 +-
 .../bacnetip/protocol/BacNetIpProtocolLogic.java   |  34 +-
 .../plc4x/java/bacnetip/ManualBacNetDecoder.java   |  34 +-
 .../java/bacnetip/PassiveBacNetIpDriverManual.java |  34 +-
 .../src/test/resources/logback.xml                 |   2 -
 sandbox/test-java-df1-driver/pom.xml               |  32 +-
 .../org/apache/plc4x/java/df1/DF1PlcDriver.java    |  32 +-
 .../java/df1/configuration/Df1Configuration.java   |  34 +-
 .../plc4x/java/df1/field/Df1FieldHandler.java      |  32 +-
 .../plc4x/java/df1/protocol/Df1Protocol.java       |  32 +-
 .../plc4x/java/df1/protocol/Df1ProtocolLogic.java  |  34 +-
 .../plc4x/java/df1/protocol/Plc4XDf1Protocol.java  |  32 +-
 .../org/apache/plc4x/java/df1/types/DataType.java  |  32 +-
 .../plc4x/protocol/df1/BenchmarkGeneratedDf1.java  |   1 -
 .../plc4x/protocol/df1/BenchmarkManualDf1.java     |   1 -
 .../protocol/df1/Df1ParserSerializerTest.java      |  35 +-
 .../apache/plc4x/protocol/df1/EndToEndTest.java    |   1 -
 src/main/script/preSiteGeneration.groovy           |  32 +-
 src/main/script/prerequisiteCheck.groovy           |  55 +--
 .../developers/code-gen/language/freemarker.adoc   |  35 +-
 .../resources/css/bootstrap-responsive.min.css     |  34 +-
 src/site/resources/css/site.css                    |  34 +-
 tools/README.md                                    |  28 +-
 tools/check_sigs.sh                                |  36 +-
 tools/clean-site.sh                                |  36 +-
 tools/common.sh                                    |  36 +-
 tools/download_staged_release.sh                   |  36 +-
 1469 files changed, 21000 insertions(+), 20126 deletions(-)
 create mode 100644 .idea/fileTemplates/Properties File.properties
 create mode 100644 .idea/fileTemplates/XML File.xml
 create mode 100644 .idea/fileTemplates/Yaml FIle.yaml
 create mode 100644 .idea/fileTemplates/Yml File.yml
 copy protocols/plc4x/src/main/resources/META-INF/services/org.apache.plc4x.plugins.codegenerator.protocol.Protocol => .idea/fileTemplates/includes/File Header Properties.properties (95%)
 copy sandbox/plc4cpp/protocols/driver-bases/CMakeLists.txt => .idea/fileTemplates/includes/File Header XML.xml (96%)
 copy plc4j/tools/scraper/src/test/resources/config.yml => .idea/fileTemplates/includes/File Header Yaml.yaml (88%)
 copy plc4j/tools/scraper/src/test/resources/config.yml => .idea/fileTemplates/includes/File Header Yml.yml (88%)
 copy plc4j/spi/src/main/java/org/apache/plc4x/java/spi/events/ConnectEvent.java => .idea/fileTemplates/includes/File Header.java (91%)
 create mode 100644 .idea/fileTemplates/internal/AnnotationType.java
 create mode 100644 .idea/fileTemplates/internal/Class.java
 create mode 100644 .idea/fileTemplates/internal/Enum.java
 create mode 100644 .idea/fileTemplates/internal/Interface.java
 create mode 100644 .idea/fileTemplates/internal/Record.java
 delete mode 100644 Sometimes-Failling-Tests.md
 mode change 100755 => 100644 build-reproducible.sh
 mode change 100755 => 100644 compare-reproducible.sh
 mode change 100755 => 100644 mvnw
 delete mode 120000 plc4c/venv/lib64
 copy plc4go/internal/plc4go/spi/transports/{tcp => serial}/Transport.go (60%)
 create mode 100644 plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/PlcDiscoveryItem.java
 copy plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/{PlcBrowseResponse.java => PlcDiscoveryItemHandler.java} (90%)
 copy plc4j/api/src/main/java/org/apache/plc4x/java/api/{messages/PlcSubscriptionEvent.java => metadata/PlcDriverMetadata.java} (78%)
 copy plc4j/api/src/main/java/org/apache/plc4x/java/api/model/{PlcConsumerRegistration.java => PlcDiscoveryHandler.java} (73%)
 copy plc4j/drivers/{modbus => profinet}/pom.xml (83%)
 copy plc4j/drivers/{eip/src/main/java/org/apache/plc4x/java/eip/readwrite/EIPDriver.java => profinet/src/main/java/org/apache/plc4x/java/profinet/ProfinetDriver.java} (50%)
 copy plc4j/drivers/{eip/src/main/java/org/apache/plc4x/java/eip/readwrite/configuration/EIPConfiguration.java => profinet/src/main/java/org/apache/plc4x/java/profinet/config/ProfinetConfiguration.java} (52%)
 copy plc4j/{api/src/main/java/org/apache/plc4x/java/api/messages/PlcUnsubscriptionResponse.java => drivers/profinet/src/main/java/org/apache/plc4x/java/profinet/context/ProfinetDiscoveryContext.java} (82%)
 create mode 100644 plc4j/drivers/profinet/src/main/java/org/apache/plc4x/java/profinet/discovery/ProfinetPlcDiscoverer.java
 copy plc4j/drivers/{mock/src/main/java/org/apache/plc4x/java/mock/field/MockFieldHandler.java => profinet/src/main/java/org/apache/plc4x/java/profinet/field/ProfinetField.java} (73%)
 copy plc4j/drivers/{mock/src/main/java/org/apache/plc4x/java/mock/field/MockFieldHandler.java => profinet/src/main/java/org/apache/plc4x/java/profinet/field/ProfinetFieldHandler.java} (87%)
 copy plc4j/drivers/{mock/src/main/java/org/apache/plc4x/java/mock/field/MockFieldHandler.java => profinet/src/main/java/org/apache/plc4x/java/profinet/protocol/ProfinetDiscoveryLogic.java} (69%)
 create mode 100644 plc4j/drivers/profinet/src/main/java/org/apache/plc4x/java/profinet/protocol/ProfinetProtocolLogic.java
 copy plc4j/{spi/src/main/java/org/apache/plc4x/java/spi/generation/ParseException.java => drivers/profinet/src/main/java/org/apache/plc4x/java/profinet/utils/StaticHelper.java} (74%)
 copy plc4j/drivers/{ab-eth => profinet}/src/main/resources/META-INF/services/org.apache.plc4x.java.api.PlcDriver (94%)
 mode change 100755 => 100644 plc4j/examples/hello-connectivity-kafka/server.sh
 copy plc4j/examples/{hello-opm => hello-discovery}/pom.xml (83%)
 create mode 100644 plc4j/examples/hello-discovery/src/main/java/org/apache/plc4x/java/examples/hellodiscovery/CliOptions.java
 create mode 100644 plc4j/examples/hello-discovery/src/main/java/org/apache/plc4x/java/examples/hellodiscovery/HelloDiscovery.java
 copy plc4j/{protocols/benchmarks => examples/hello-discovery}/src/main/resources/logback.xml (94%)
 create mode 100644 plc4j/spi/src/main/java/org/apache/plc4x/java/spi/messages/DefaultPlcDiscoveryItem.java
 copy plc4j/spi/src/main/java/org/apache/plc4x/java/spi/messages/{DefaultPlcUnsubscriptionResponse.java => DefaultPlcDiscoveryRequest.java} (52%)
 copy plc4j/spi/src/main/java/org/apache/plc4x/java/spi/messages/{DefaultPlcUnsubscriptionResponse.java => DefaultPlcDiscoveryResponse.java} (55%)
 copy plc4j/spi/src/main/java/org/apache/plc4x/java/spi/messages/{PlcReader.java => PlcDiscoverer.java} (65%)
 create mode 100644 plc4j/transports/test/src/main/remote-resources/META-INF/LICENSE
 copy plc4j/{utils/raw-sockets/src => transports/test/src/main}/remote-resources/META-INF/NOTICE (100%)
 create mode 100644 plc4j/utils/pcap-shared/src/main/remote-resources/META-INF/LICENSE
 copy plc4j/utils/{raw-sockets/src => pcap-shared/src/main}/remote-resources/META-INF/NOTICE (100%)
 copy protocols/{s7 => profinet}/pom.xml (88%)
 copy protocols/{ab-eth/src/main/java/org/apache/plc4x/protocol/abeth/ABETHProtocol.java => profinet/src/main/java/org/apache/plc4x/protocol/profinet/ProfinetProtocol.java} (86%)
 copy protocols/{knxnetip => profinet}/src/main/resources/META-INF/services/org.apache.plc4x.plugins.codegenerator.protocol.Protocol (93%)
 create mode 100644 protocols/profinet/src/main/resources/protocols/profinet/profinet.mspec
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/PlcConnection.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/PlcConnection.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/authentication/PlcAuthentication.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/authentication/PlcAuthentication.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/authentication/PlcUsernamePasswordAuthentication.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/authentication/PlcUsernamePasswordAuthentication.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcConnectionException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcConnectionException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcFieldRangeException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcFieldRangeException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcIncompatibleDatatypeException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcIncompatibleDatatypeException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcInvalidFieldException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcInvalidFieldException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcIoException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcIoException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcNotImplementedException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcNotImplementedException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcProtocolException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcProtocolException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcProtocolPayloadTooBigException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcProtocolPayloadTooBigException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcRuntimeException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcRuntimeException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcTimeoutException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcTimeoutException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcUnsupportedDataTypeException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcUnsupportedDataTypeException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcUnsupportedOperationException.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/exceptions/PlcUnsupportedOperationException.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcFieldRequest.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcFieldRequest.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcFieldResponse.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcFieldResponse.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcMessage.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcMessage.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequest.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadRequest.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadResponse.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcReadResponse.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcRequest.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcRequest.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcRequestBuilder.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcRequestBuilder.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcResponse.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcResponse.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcSubscriptionEvent.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcSubscriptionEvent.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcSubscriptionRequest.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcSubscriptionRequest.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcSubscriptionResponse.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcSubscriptionResponse.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcUnsubscriptionRequest.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcUnsubscriptionRequest.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcUnsubscriptionResponse.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcUnsubscriptionResponse.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcWriteRequest.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcWriteRequest.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcWriteResponse.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/PlcWriteResponse.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/REQUEST.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/REQUEST.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/RESPONSE.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/RESPONSE.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/RequestTemplate.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/RequestTemplate.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/ResponseTemplate.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/messages/ResponseTemplate.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/metadata/PlcConnectionMetadata.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/metadata/PlcConnectionMetadata.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/model/Consumer.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/model/Consumer.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/model/PlcConsumerRegistration.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/model/PlcConsumerRegistration.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/model/PlcField.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/model/PlcField.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/model/PlcSubscriptionHandle.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/model/PlcSubscriptionHandle.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/types/PlcClientDataType.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/types/PlcClientDataType.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/types/PlcResponseCode.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/types/PlcResponseCode.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/types/PlcSubscriptionType.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/types/PlcSubscriptionType.h
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/types/ValueTypeObject.cpp
 mode change 100755 => 100644 sandbox/plc4cpp/api/src/main/cpp/org/apache/plc4x/cpp/api/types/ValueTypeObject.h
 mode change 100755 => 100644 tools/check_sigs.sh
 mode change 100755 => 100644 tools/common.sh
 mode change 100755 => 100644 tools/download_staged_release.sh