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 2020/01/16 08:44:30 UTC
[plc4x] 01/02: Merge branches 'develop' and 'next-gen-core-2' of
https://gitbox.apache.org/repos/asf/plc4x into develop
This is an automated email from the ASF dual-hosted git repository.
cdutz pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git
commit e96f5f9f3537bcd7a7d67a5e42f66a3b9be2a9d4
Merge: b0c5263 7e01b5d
Author: Christofer Dutz <ch...@c-ware.de>
AuthorDate: Thu Jan 16 09:22:49 2020 +0100
Merge branches 'develop' and 'next-gen-core-2' of https://gitbox.apache.org/repos/asf/plc4x into develop
Conflicts:
plc4j/api/pom.xml
plc4j/drivers/ab-eth/pom.xml
plc4j/drivers/ads/pom.xml
plc4j/drivers/ethernet-ip/pom.xml
plc4j/drivers/modbus/pom.xml
plc4j/drivers/opcua/pom.xml
plc4j/drivers/s7/pom.xml
plc4j/drivers/simulated/pom.xml
plc4j/examples/dummy-driver/pom.xml
plc4j/examples/hello-world-plc4x/pom.xml
plc4j/integrations/apache-camel/pom.xml
plc4j/integrations/apache-edgent/pom.xml
plc4j/integrations/apache-nifi/nifi-plc4x-nar/pom.xml
plc4j/protocols/ads/pom.xml
plc4j/protocols/driver-bases/base/pom.xml
plc4j/protocols/ethernet-ip/pom.xml
plc4j/protocols/iso-on-tcp/pom.xml
plc4j/protocols/iso-tp/pom.xml
plc4j/protocols/modbus/pom.xml
plc4j/protocols/s7/pom.xml
plc4j/tools/connection-pool/pom.xml
plc4j/tools/interop/pom.xml
plc4j/tools/opm/pom.xml
plc4j/tools/scraper/pom.xml
plc4j/transports/pcap-socket/pom.xml
plc4j/transports/pom.xml
plc4j/transports/raw-socket/pom.xml
plc4j/transports/serial/pom.xml
plc4j/transports/tcp/pom.xml
plc4j/transports/test/pom.xml
plc4j/transports/udp/pom.xml
plc4j/utils/driver-base-java/pom.xml
plc4j/utils/protocol-test-utils/pom.xml
sandbox/plc-simulator/pom.xml
sandbox/test-java-amsads-driver/pom.xml
sandbox/test-java-bacnetip-driver/pom.xml
sandbox/test-java-df1-driver/pom.xml
sandbox/test-java-knxnetip-driver-passive/pom.xml
sandbox/test-java-knxnetip-driver/pom.xml
sandbox/test-java-knxnetip-shared/pom.xml
sandbox/test-java-s7-driver-passive/pom.xml
sandbox/test-java-s7-driver/pom.xml
sandbox/test-streampipes-plc4x-adapters/pom.xml
sandbox/test-streampipes-plc4x-processors/pom.xml
.../freemarker/FreemarkerLanguageOutput.java | 41 +-
.../plc4x/language/java/JavaLanguageOutput.java | 12 +-
.../language/java/JavaLanguageTemplateHelper.java | 139 ++-
.../resources/templates/java/data-io-template.ftlh | 278 ++++++
.../resources/templates/java/enum-template.ftlh | 115 +--
.../main/resources/templates/java/io-template.ftlh | 91 +-
.../resources/templates/java/pojo-template.ftlh | 16 +-
.../plugins/codegenerator/language/mspec/MSpec.g4 | 20 +-
.../definitions/DefaultDataIoTypeDefinition.java | 38 +
.../model/fields/DefaultManualArrayField.java | 14 +-
.../mspec/model/fields/DefaultManualField.java | 14 +-
.../references/DefaultStringTypeReference.java | 38 +
.../references/DefaultTemporalTypeReference.java | 30 +
.../mspec/parser/MessageFormatListener.java | 89 +-
.../src/test/resources/mspec.example | 4 +-
.../src/main/resources/protocols/test/test.mspec | 2 +-
jenkins.pom | 2 +-
plc4j/api/pom.xml | 40 +-
.../org/apache/plc4x/java/PlcDriverManager.java | 50 +-
.../org/apache/plc4x/java/api/Experimental.java | 26 +
.../org/apache/plc4x/java/api/PlcConnection.java | 35 +-
.../plc4x/java/api/PlcConnectionExtension.java | 82 ++
.../java/org/apache/plc4x/java/api/PlcDriver.java | 60 ++
.../java/api/authentication/PlcAuthentication.java | 34 +-
.../PlcUsernamePasswordAuthentication.java | 34 +-
.../api/exceptions/PlcConnectionException.java | 34 +-
.../plc4x/java/api/exceptions/PlcException.java | 34 +-
.../api/exceptions/PlcFieldRangeException.java | 32 +-
.../PlcIncompatibleDatatypeException.java | 39 +-
.../api/exceptions/PlcInvalidFieldException.java | 32 +-
.../plc4x/java/api/exceptions/PlcIoException.java | 34 +-
.../api/exceptions/PlcNotImplementedException.java | 32 +-
.../java/api/exceptions/PlcProtocolException.java | 34 +-
.../PlcProtocolPayloadTooBigException.java | 34 +-
.../exceptions/PlcProtocolTimeoutException.java | 39 +
.../java/api/exceptions/PlcRuntimeException.java | 34 +-
.../java/api/exceptions/PlcTimeoutException.java | 32 +-
.../PlcUnsupportedDataTypeException.java | 32 +-
.../PlcUnsupportedOperationException.java | 34 +-
.../PlcUnsupportedProtocolException.java | 32 +-
.../plc4x/java/api/messages/PlcFieldRequest.java | 34 +-
.../plc4x/java/api/messages/PlcFieldResponse.java | 34 +-
.../apache/plc4x/java/api/messages/PlcMessage.java | 34 +-
.../plc4x/java/api/messages/PlcReadRequest.java | 34 +-
.../plc4x/java/api/messages/PlcReadResponse.java | 50 +-
.../apache/plc4x/java/api/messages/PlcRequest.java | 34 +-
.../plc4x/java/api/messages/PlcRequestBuilder.java | 34 +-
.../plc4x/java/api/messages/PlcResponse.java | 34 +-
.../java/api/messages/PlcSubscriptionEvent.java | 34 +-
.../java/api/messages/PlcSubscriptionRequest.java | 34 +-
.../java/api/messages/PlcSubscriptionResponse.java | 34 +-
.../api/messages/PlcUnsubscriptionRequest.java | 34 +-
.../api/messages/PlcUnsubscriptionResponse.java | 34 +-
.../plc4x/java/api/messages/PlcWriteRequest.java | 38 +-
.../plc4x/java/api/messages/PlcWriteResponse.java | 34 +-
.../java/api/metadata/PlcConnectionMetadata.java | 34 +-
.../java/api/model/PlcConsumerRegistration.java | 32 +-
.../org/apache/plc4x/java/api/model/PlcField.java | 34 +-
.../java/api/model/PlcSubscriptionHandle.java | 34 +-
.../plc4x/java/api/types/PlcClientDatatype.java | 34 +-
.../plc4x/java/api/types/PlcResponseCode.java | 34 +-
.../plc4x/java/api/types/PlcSubscriptionType.java | 34 +-
.../apache/plc4x/java/api/value/PlcBigDecimal.java | 136 +++
.../apache/plc4x/java/api/value/PlcBigInteger.java | 136 +++
.../apache/plc4x/java/api/value/PlcBoolean.java | 130 +++
.../org/apache/plc4x/java/api/value/PlcDate.java | 55 +
.../apache/plc4x/java/api/value/PlcDateTime.java | 77 ++
.../org/apache/plc4x/java/api/value/PlcDouble.java | 140 +++
.../org/apache/plc4x/java/api/value/PlcFloat.java | 140 +++
.../apache/plc4x/java/api/value/PlcInteger.java | 156 +++
.../org/apache/plc4x/java/api/value/PlcList.java | 72 ++
.../org/apache/plc4x/java/api/value/PlcLong.java | 140 +++
.../plc4x/java/api/value/PlcSimpleValue.java | 57 ++
.../org/apache/plc4x/java/api/value/PlcString.java | 68 ++
.../org/apache/plc4x/java/api/value/PlcStruct.java | 70 ++
.../org/apache/plc4x/java/api/value/PlcTime.java | 55 +
.../org/apache/plc4x/java/api/value/PlcValue.java | 142 +++
.../plc4x/java/api/value/PlcValueAdapter.java | 248 +++++
.../org/apache/plc4x/java/api/value/PlcValues.java | 379 +++++++
.../java/org/apache/plc4x/java/spi/PlcDriver.java | 61 --
.../apache/plc4x/java/PlcDriverManagerTest.java | 47 +-
.../PlcUsernamePasswordAuthenticationTest.java | 39 +-
.../plc4x/java/api/connection/PlcReaderTest.java | 32 +-
.../plc4x/java/api/connection/PlcWriterTest.java | 32 +-
.../api/exceptions/PlcConnectionExceptionTest.java | 32 +-
.../java/api/exceptions/PlcExceptionTest.java | 32 +-
.../api/exceptions/PlcFieldRangeExceptionTest.java | 32 +-
.../PlcIncompatibleDatatypeExceptionTest.java | 32 +-
.../exceptions/PlcInvalidFieldExceptionTest.java | 32 +-
.../java/api/exceptions/PlcIoExceptionTest.java | 32 +-
.../exceptions/PlcNotImplementedExceptionTest.java | 32 +-
.../api/exceptions/PlcProtocolExceptionTest.java | 32 +-
.../PlcProtocolPayloadTooBigExceptionTest.java | 32 +-
.../api/exceptions/PlcRuntimeExceptionTest.java | 32 +-
.../api/exceptions/PlcTimeoutExceptionTest.java | 32 +-
.../PlcUnsupportedDataTypeExceptionTest.java | 32 +-
.../PlcUnsupportedOperationExceptionTest.java | 32 +-
.../plc4x/java/api/messages/APIMessageTests.java | 34 +-
.../api/messages/PlcProprietaryRequestTest.java | 32 +-
.../api/messages/PlcProprietaryResponseTest.java | 32 +-
.../java/api/messages/PlcReadRequestTest.java | 32 +-
.../java/api/messages/PlcReadResponseTest.java | 32 +-
.../plc4x/java/api/messages/PlcRequestTest.java | 32 +-
.../plc4x/java/api/messages/PlcResponseTest.java | 32 +-
.../api/messages/PlcSubscriptionEventTest.java | 32 +-
.../api/messages/PlcSubscriptionRequestTest.java | 32 +-
.../api/messages/PlcSubscriptionResponseTest.java | 32 +-
.../api/messages/PlcUnsubscriptionRequestTest.java | 32 +-
.../messages/PlcUnsubscriptionResponseTest.java | 32 +-
.../java/api/messages/PlcWriteRequestTest.java | 32 +-
.../java/api/messages/PlcWriteResponseTest.java | 32 +-
.../plc4x/java/api/messages/mock/MockField.java | 34 +-
.../specific/TypeSafePlcReadRequestTest.java | 32 +-
.../specific/TypeSafePlcReadResponseTest.java | 32 +-
.../specific/TypeSafePlcWriteRequestTest.java | 32 +-
.../specific/TypeSafePlcWriteResponseTest.java | 32 +-
.../java/api/types/PlcClientDatatypeTest.java | 32 +-
.../plc4x/java/api/types/PlcResponseCodeTest.java | 32 +-
.../java/api/types/PlcSubscriptionTypeTest.java | 32 +-
.../apache/plc4x/java/api/types/PlcValueTest.java | 53 +
.../apache/plc4x/java/api/value/PlcValuesTest.java | 52 +
.../org/apache/plc4x/java/mock/ApiMockDriver.java | 55 +
.../plc4x/java/mock/DuplicateMockDriver.java | 34 +-
.../org/apache/plc4x/java/mock/MockDriver.java | 55 -
.../apache/plc4x/java/mock/MockPlcConnection.java | 32 +-
.../services/org.apache.plc4x.java.api.PlcDriver | 38 +
.../services/org.apache.plc4x.java.api.PlcDriver | 38 +
.../services/org.apache.plc4x.java.spi.PlcDriver | 19 -
plc4j/drivers/ab-eth/pom.xml | 24 +-
.../org/apache/plc4x/java/abeth/AbEthDriver.java | 60 +-
.../abeth/configuration/AbEthConfiguration.java | 44 +
.../java/abeth/connection/AbEthFieldHandler.java | 36 -
.../java/abeth/connection/AbEthPlcConnection.java | 159 ---
.../apache/plc4x/java/abeth/field/AbEthField.java | 105 ++
.../plc4x/java/abeth/field/AbEthFieldHandler.java | 35 +
.../apache/plc4x/java/abeth/model/AbEthField.java | 105 --
.../plc4x/java/abeth/model/types/FileType.java | 65 --
.../plc4x/java/abeth/protocol/AbEthProtocol.java | 61 --
.../java/abeth/protocol/AbEthProtocolLogic.java | 221 +++++
.../java/abeth/protocol/Plc4xAbEthProtocol.java | 51 +-
.../apache/plc4x/java/abeth/types/FileType.java | 65 ++
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
.../org/apache/plc4x/protocol/abeth/AbEthTest.java | 2 +-
.../test/resources/testsuite/AbEthTestsuite.xml | 2 +-
plc4j/drivers/ads/pom.xml | 15 +-
.../org/apache/plc4x/java/ads/AdsPlcDriver.java | 2 +-
.../ads/connection/AdsAbstractPlcConnection.java | 39 +-
.../ads/connection/AdsSerialPlcConnection.java | 4 +-
.../java/ads/connection/AdsTcpPlcConnection.java | 23 +-
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
.../apache/plc4x/java/ads/adslib/AmsRequest.java | 4 +-
.../apache/plc4x/java/ads/adslib/AmsRouter.java | 4 +-
.../connection/AdsAbstractPlcConnectionTest.java | 16 +-
.../ads/connection/AdsConnectionFactoryTest.java | 6 +-
.../ads/connection/AdsSerialPlcConnectionTest.java | 6 +-
.../ads/connection/AdsTcpPlcConnectionTests.java | 6 +-
plc4j/drivers/ethernet-ip/pom.xml | 9 +-
.../plc4x/java/ethernetip/EtherNetIpPlcDriver.java | 2 +-
.../connection/BaseEtherNetIpPlcConnection.java | 6 +-
.../connection/EtherNetIpTcpPlcConnection.java | 9 +-
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
plc4j/drivers/mock/pom.xml | 74 ++
.../org/apache/plc4x/java/mock/MockDriver.java | 63 ++
.../plc4x/java/mock/connection/MockConnection.java | 207 ++++
.../plc4x/java/mock/connection/MockDevice.java | 51 +
.../java/mock/connection/tcp/TcpHexDumper.java | 0
.../apache/plc4x/java/mock/field/MockField.java | 62 ++
.../plc4x/java/mock/field/MockFieldHandler.java | 98 ++
.../apache/plc4x/java/mock/field/MockPlcValue.java | 36 +
.../mock/protocol/Plc4XSupportedDataTypes.java | 0
.../org/apache/plc4x/java/mock/util/Assert.java | 0
.../org/apache/plc4x/java/mock/util/HexUtil.java | 0
.../services/org.apache.plc4x.java.api.PlcDriver} | 0
plc4j/drivers/modbus/pom.xml | 17 +-
.../apache/plc4x/java/modbus/ModbusPlcDriver.java | 2 +-
.../modbus/connection/BaseModbusPlcConnection.java | 14 +-
.../connection/ModbusSerialPlcConnection.java | 2 +-
.../modbus/connection/ModbusTcpPlcConnection.java | 7 +-
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
.../connection/BaseModbusPlcConnectionTest.java | 6 +-
.../connection/ModbusConnectionFactoryTest.java | 6 +-
.../connection/ModbusSerialPlcConnectionTest.java | 6 +-
plc4j/drivers/opcua/pom.xml | 6 +-
.../apache/plc4x/java/opcua/OpcuaPlcDriver.java | 2 +-
.../opcua/connection/BaseOpcuaPlcConnection.java | 4 +-
.../opcua/connection/OpcuaTcpPlcConnection.java | 52 +-
.../java/opcua/protocol/OpcuaPlcFieldHandler.java | 94 +-
.../opcua/protocol/OpcuaSubsriptionHandle.java | 12 +-
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
.../apache/plc4x/java/opcua/ManualPLC4XOpcua.java | 4 +-
plc4j/drivers/pom.xml | 9 +-
plc4j/drivers/s7/pom.xml | 19 +-
.../java/org/apache/plc4x/java/s7/S7PlcDriver.java | 2 +-
.../plc4x/java/s7/connection/S7PlcConnection.java | 33 +-
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
.../java/org/apache/plc4x/java/s7/BenchmarkS7.java | 5 +-
.../java/s7/connection/S7PlcTestConnection.java | 2 +-
plc4j/drivers/simulated/pom.xml | 12 +-
.../plc4x/java/simulated/SimulatedDriver.java | 65 ++
.../plc4x/java/simulated/SimulatedPlcDriver.java | 65 --
.../simulated/connection/SimulatedConnection.java | 254 +++++
.../java/simulated/connection/SimulatedDevice.java | 194 ++++
.../connection/SimulatedPlcConnection.java | 219 ----
.../java/simulated/connection/TestDevice.java | 199 ----
.../plc4x/java/simulated/connection/TestField.java | 128 ---
.../simulated/connection/TestFieldHandler.java | 174 ----
.../java/simulated/connection/TestFieldItem.java | 35 -
.../plc4x/java/simulated/connection/TestType.java | 28 -
.../plc4x/java/simulated/field/SimulatedField.java | 129 +++
.../simulated/field/SimulatedFieldHandler.java | 214 ++++
.../java/simulated/types/SimulatedFieldType.java | 28 +
.../services/org.apache.plc4x.java.api.PlcDriver | 19 +
.../services/org.apache.plc4x.java.spi.PlcDriver | 38 -
.../plc4x/java/simulated/SimulatedDriverTest.java | 58 ++
.../java/simulated/SimulatedPlcDriverTest.java | 57 --
.../connection/SimulatedConnectionTest.java | 245 +++++
.../simulated/connection/SimulatedDeviceTest.java | 57 ++
.../connection/SimulatedPlcConnectionTest.java | 245 -----
.../java/simulated/connection/TestDeviceTest.java | 56 --
.../simulated/connection/TestFieldHandlerTest.java | 133 ---
.../simulated/connection/TestFieldItemTest.java | 31 -
.../java/simulated/connection/TestFieldTest.java | 61 --
.../simulated/field/SimularedFieldHandlerTest.java | 128 +++
.../java/simulated/field/SimulatedFieldTest.java | 62 ++
plc4j/examples/dummy-driver/pom.xml | 5 +-
.../java/examples/dummydriver/DummyDriver.java | 2 +-
.../dummydriver/connection/DummyConnection.java | 14 +-
.../examples/dummydriver/netty/DummyProtocol.java | 2 +-
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
plc4j/examples/hello-cloud-azure/pom.xml | 8 +-
plc4j/examples/hello-cloud-google/pom.xml | 8 +-
plc4j/examples/hello-connectivity-kafka/pom.xml | 8 +-
plc4j/examples/hello-connectivity-mqtt/pom.xml | 8 +-
plc4j/examples/hello-integration-edgent/pom.xml | 8 +-
plc4j/examples/hello-integration-iotdb/pom.xml | 8 +-
.../java/examples/integration/iotdb/PlcLogger.java | 2 +-
plc4j/examples/hello-opm/pom.xml | 8 +-
plc4j/examples/hello-storage-elasticsearch/pom.xml | 8 +-
plc4j/examples/hello-webapp/service/pom.xml | 8 +-
plc4j/examples/hello-world-plc4x/pom.xml | 15 +-
.../plc4x/java/examples/helloplc4x/HelloPlc4x.java | 13 +-
.../src/main/resources/logback.xml | 2 +-
plc4j/examples/pom.xml | 2 +-
plc4j/integrations/apache-calcite/pom.xml | 1 -
.../java/org/apache/plc4x/DriverManagerTest.java | 1 -
.../java/org/apache/plc4x/Plc4XBaseTableTest.java | 2 +-
.../apache-calcite/src/test/resources/example.yml | 4 +-
plc4j/integrations/apache-camel/pom.xml | 6 +-
.../java/org/apache/plc4x/camel/MockDriver.java | 15 +-
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
plc4j/integrations/apache-edgent/pom.xml | 19 +-
.../apache/plc4x/edgent/PlcConnectionAdapter.java | 4 +-
.../plc4x/edgent/PlcConnectionAdapterTest.java | 551 ++++++++++
.../org/apache/plc4x/edgent/PlcFunctionsTest.java | 144 +++
.../plc4x/edgent/PlcConnectionAdapterTest.java | 552 -----------
.../org/apache/plc4x/edgent/PlcFunctionsTest.java | 144 ---
.../apache/plc4x/edgent/mock/MockConnection.java | 155 ---
.../org/apache/plc4x/edgent/mock/MockDriver.java | 48 -
.../org/apache/plc4x/edgent/mock/MockField.java | 62 --
.../apache/plc4x/edgent/mock/MockFieldHandler.java | 104 --
.../apache/plc4x/edgent/mock/MockFieldItem.java | 34 -
.../services/org.apache.plc4x.java.spi.PlcDriver | 19 -
plc4j/integrations/apache-kafka/README.md | 2 +-
plc4j/integrations/apache-kafka/pom.xml | 8 +-
.../apache-nifi/nifi-plc4x-nar/pom.xml | 8 +-
plc4j/integrations/logstash-plugin/pom.xml | 8 +-
plc4j/karaf-features/pom.xml | 4 +-
.../karaf-features/s7/src/main/feature/feature.xml | 5 +-
plc4j/pom.xml | 9 +-
plc4j/protocols/ads/pom.xml | 9 +-
.../plc4x/java/ads/api/serial/AmsSerialFrame.java | 2 +-
.../plc4x/java/ads/model/AdsPlcFieldHandler.java | 168 ++--
.../java/ads/model/AdsSubscriptionHandle.java | 4 +-
.../plc4x/java/ads/protocol/Plc4x2AdsProtocol.java | 29 +-
.../ads/protocol/util/LittleEndianDecoder.java | 206 +++-
.../protocol/util/SingleMessageRateLimiter.java | 2 +-
.../protocol/util/LittleEndianDecoderSpec.groovy | 99 --
.../util/LittleEndianDecoderSpecHurz.groovy | 99 ++
.../protocol/util/LittleEndianEncoderSpec.groovy | 53 -
.../util/LittleEndianEncoderSpecHurz.groovy | 53 +
.../java/ads/model/AdsPlcFieldHandlerTest.java | 5 +-
...load2SerialProtocolExampleConversationTest.java | 8 +-
.../java/ads/protocol/Plc4x2AdsProtocolTest.java | 4 +-
.../java/ads/protocol/util/DigestUtilTest.java | 5 +-
plc4j/protocols/driver-bases/base/pom.xml | 101 --
.../base/GeneratedDriverByteToMessageCodec.java | 79 --
.../plc4x/java/base/PlcByteToMessageCodec.java | 59 --
.../plc4x/java/base/PlcMessageToMessageCodec.java | 60 --
.../base/connection/AbstractPlcConnection.java | 105 --
.../plc4x/java/base/connection/ChannelFactory.java | 33 -
.../base/connection/DefaultPlcFieldHandler.java | 101 --
.../java/base/connection/NettyPlcConnection.java | 132 ---
.../java/base/connection/PlcFieldHandler.java | 60 --
.../plc4x/java/base/events/ConnectEvent.java | 22 -
.../plc4x/java/base/events/ConnectedEvent.java | 22 -
.../plc4x/java/base/events/DisconnectEvent.java | 39 -
.../plc4x/java/base/events/DisconnectedEvent.java | 22 -
.../messages/DefaultPlcProprietaryRequest.java | 43 -
.../messages/DefaultPlcProprietaryResponse.java | 42 -
.../java/base/messages/DefaultPlcReadRequest.java | 113 ---
.../java/base/messages/DefaultPlcReadResponse.java | 583 -----------
.../base/messages/DefaultPlcSubscriptionEvent.java | 55 -
.../messages/DefaultPlcSubscriptionRequest.java | 168 ----
.../messages/DefaultPlcSubscriptionResponse.java | 90 --
.../messages/DefaultPlcUnsubscriptionRequest.java | 90 --
.../messages/DefaultPlcUnsubscriptionResponse.java | 36 -
.../java/base/messages/DefaultPlcWriteRequest.java | 275 -----
.../base/messages/DefaultPlcWriteResponse.java | 62 --
.../base/messages/InternalPlcFieldRequest.java | 31 -
.../base/messages/InternalPlcFieldResponse.java | 26 -
.../java/base/messages/InternalPlcMessage.java | 23 -
.../messages/InternalPlcProprietaryRequest.java | 22 -
.../messages/InternalPlcProprietaryResponse.java | 22 -
.../java/base/messages/InternalPlcReadRequest.java | 26 -
.../base/messages/InternalPlcReadResponse.java | 31 -
.../java/base/messages/InternalPlcRequest.java | 24 -
.../java/base/messages/InternalPlcResponse.java | 25 -
.../messages/InternalPlcSubscriptionEvent.java | 25 -
.../messages/InternalPlcSubscriptionRequest.java | 36 -
.../messages/InternalPlcSubscriptionResponse.java | 30 -
.../messages/InternalPlcUnsubscriptionRequest.java | 29 -
.../InternalPlcUnsubscriptionResponse.java | 25 -
.../base/messages/InternalPlcWriteRequest.java | 36 -
.../base/messages/InternalPlcWriteResponse.java | 28 -
.../java/base/messages/PlcProprietaryRequest.java | 25 -
.../java/base/messages/PlcProprietaryResponse.java | 25 -
.../java/base/messages/PlcProprietarySender.java | 25 -
.../java/base/messages/PlcProtocolMessage.java | 25 -
.../plc4x/java/base/messages/PlcRawMessage.java | 46 -
.../apache/plc4x/java/base/messages/PlcReader.java | 40 -
.../java/base/messages/PlcRequestContainer.java | 85 --
.../plc4x/java/base/messages/PlcSubscriber.java | 63 --
.../apache/plc4x/java/base/messages/PlcWriter.java | 40 -
.../base/messages/items/BaseDefaultFieldItem.java | 193 ----
.../messages/items/DefaultBigDecimalFieldItem.java | 171 ----
.../messages/items/DefaultBigIntegerFieldItem.java | 171 ----
.../messages/items/DefaultBooleanFieldItem.java | 184 ----
.../messages/items/DefaultByteArrayFieldItem.java | 58 --
.../base/messages/items/DefaultByteFieldItem.java | 151 ---
.../messages/items/DefaultDoubleFieldItem.java | 158 ---
.../base/messages/items/DefaultFloatFieldItem.java | 156 ---
.../messages/items/DefaultIntegerFieldItem.java | 153 ---
.../messages/items/DefaultLocalDateFieldItem.java | 50 -
.../items/DefaultLocalDateTimeFieldItem.java | 78 --
.../messages/items/DefaultLocalTimeFieldItem.java | 50 -
.../base/messages/items/DefaultLongFieldItem.java | 154 ---
.../base/messages/items/DefaultShortFieldItem.java | 151 ---
.../messages/items/DefaultStringFieldItem.java | 48 -
.../base/model/DefaultPlcConsumerRegistration.java | 85 --
.../base/model/DefaultPlcSubscriptionHandle.java | 62 --
.../model/InternalPlcConsumerRegistration.java | 32 -
.../base/model/InternalPlcSubscriptionHandle.java | 25 -
.../java/base/model/SubscriptionPlcField.java | 55 -
.../SingleItemToSingleRequestProtocol.java | 647 ------------
.../messages/DefaultPlcReadResponseSpec.groovy | 86 --
.../base/messages/items/DefaultItemsSpec.groovy | 217 ----
.../base/connection/AbstractPlcConnectionTest.java | 101 --
.../base/connection/NettyPlcConnectionTest.java | 92 --
.../messages/DefaultPlcProprietaryRequestTest.java | 48 -
.../DefaultPlcProprietaryResponseTest.java | 50 -
.../base/messages/DefaultPlcReadRequestTest.java | 116 ---
.../base/messages/DefaultPlcReadResponseTest.java | 120 ---
.../messages/DefaultPlcSubscriptionEventTest.java | 68 --
.../DefaultPlcSubscriptionRequestTest.java | 157 ---
.../DefaultPlcSubscriptionResponseTest.java | 124 ---
.../DefaultPlcUnsubscriptionRequestTest.java | 91 --
.../DefaultPlcUnsubscriptionResponseTest.java | 48 -
.../base/messages/DefaultPlcWriteRequestTest.java | 70 --
.../base/messages/DefaultPlcWriteResponseTest.java | 91 --
.../java/base/messages/PlcRawMessageTest.java | 57 --
.../base/messages/PlcRequestContainerTest.java | 82 --
.../messages/items/DefaultLongFieldItemTest.java | 114 ---
.../model/DefaultPlcConsumerRegistrationTest.java | 88 --
.../model/DefaultPlcSubscriptionHandleTest.java | 73 --
.../java/base/model/SubscriptionPlcFieldTest.java | 68 --
.../SingleItemToSingleRequestProtocolTest.java | 729 --------------
...spockframework.report.IReportCreator.properties | 66 --
plc4j/protocols/driver-bases/pcap-socket/pom.xml | 67 --
.../java/base/connection/PcapChannelFactory.java | 101 --
plc4j/protocols/driver-bases/pom.xml | 46 -
plc4j/protocols/driver-bases/raw-socket/pom.xml | 67 --
.../base/connection/RawSocketChannelFactory.java | 110 --
plc4j/protocols/driver-bases/serial/pom.xml | 81 --
.../connection/connection/SerialChannel.java | 635 ------------
.../connection/SerialChannelFactory.java | 83 --
.../connection/SerialChannelHandler.java | 172 ----
.../connection/SerialPollingSelector.java | 176 ----
.../connection/connection/SerialSelectionKey.java | 80 --
.../connection/SerialSelectorProvider.java | 68 --
.../connection/connection/SerialSocketAddress.java | 47 -
.../connection/connection/SerialSocketChannel.java | 158 ---
.../base/connection/SerialChannelFactoryTest.java | 111 ---
plc4j/protocols/driver-bases/tcp/pom.xml | 62 --
.../tcp/connection/TcpSocketChannelFactory.java | 112 ---
plc4j/protocols/driver-bases/test/pom.xml | 97 --
.../org/apache/plc4x/java/mock/MockDevice.java | 50 -
.../java/org/apache/plc4x/java/mock/MockField.java | 49 -
.../apache/plc4x/java/mock/MockFieldHandler.java | 103 --
.../org/apache/plc4x/java/mock/MockFieldItem.java | 34 -
.../apache/plc4x/java/mock/PlcMockConnection.java | 193 ----
.../org/apache/plc4x/java/mock/PlcMockDriver.java | 62 --
.../plc4x/java/mock/connection/MockConnection.java | 41 -
.../java/mock/connection/TestChannelFactory.java | 45 -
.../plc4x/java/mock/MockFieldHandlerTest.java | 111 ---
.../apache/plc4x/java/mock/MockFieldItemTest.java | 31 -
.../org/apache/plc4x/java/mock/MockFieldTest.java | 48 -
.../plc4x/java/mock/PlcMockConnectionTest.java | 164 ---
.../apache/plc4x/java/mock/PlcMockDriverTest.java | 96 --
plc4j/protocols/driver-bases/udp/pom.xml | 70 --
.../base/connection/UdpSocketChannelFactory.java | 110 --
.../protocol/DatagramUnpackingHandler.java | 39 -
plc4j/protocols/ethernet-ip/pom.xml | 2 +-
.../ethernetip/netty/Plc4XEtherNetIpProtocol.java | 16 +-
.../ethernetip/netty/util/EnipPlcFieldHandler.java | 28 +-
plc4j/protocols/iso-on-tcp/pom.xml | 6 +-
.../java/isoontcp/protocol/IsoOnTcpProtocol.java | 4 +-
.../isoontcp/protocol/model/IsoOnTcpMessage.java | 2 +-
plc4j/protocols/iso-tp/pom.xml | 3 +-
.../plc4x/java/isotp/protocol/IsoTPProtocol.java | 4 +-
.../java/isotp/protocol/model/IsoTPMessage.java | 2 +-
.../java/isotp/protocol/model/tpdus/DataTpdu.java | 2 +-
.../java/isotp/protocol/model/tpdus/Tpdu.java | 4 +-
plc4j/protocols/modbus/pom.xml | 9 +-
.../items/DefaultModbusByteArrayFieldItem.java | 258 -----
.../items/DefaultModbusByteArrayPlcList.java | 218 ++++
.../java/modbus/netty/Plc4XModbusProtocol.java | 82 +-
.../java/modbus/util/ModbusPlcFieldHandler.java | 33 +-
.../plc4x/java/modbus/ManualPlc4XModbusTest.java | 6 +-
.../items/DefaultModbusByteArrayFieldItemTest.java | 170 ----
.../items/DefaultModbusByteArrayPlcValueTest.java | 170 ++++
.../java/modbus/netty/Plc4XModbusProtocolTest.java | 57 +-
plc4j/protocols/pom.xml | 5 +-
plc4j/protocols/s7/pom.xml | 3 +-
.../plc4x/java/s7/netty/Plc4XS7Protocol.java | 337 ++++---
.../java/s7/netty/model/messages/S7Message.java | 4 +-
.../s7/netty/model/messages/S7RequestMessage.java | 2 +-
.../messages/SetupCommunicationRequestMessage.java | 2 +-
.../strategies/DefaultS7MessageProcessor.java | 2 +-
.../java/s7/netty/util/S7PlcFieldHandler.java | 142 +--
.../plc4x/java/s7/netty/Plc4XS7ProtocolSpec.groovy | 14 +-
.../plc4x/java/s7/netty/Plc4XS7ProtocolTest.java | 2 +-
.../java/s7/netty/util/S7PlcFieldHandlerTest.java | 44 +-
plc4j/spi/pom.xml | 86 ++
.../github/jinahya/bit/io/MyDefaultBitInput.java | 0
.../apache/plc4x/java/spi/ConversationContext.java | 86 ++
.../spi/GeneratedDriverByteToMessageCodec.java | 90 ++
.../apache/plc4x/java/spi/Plc4xNettyWrapper.java | 204 ++++
.../apache/plc4x/java/spi/Plc4xProtocolBase.java | 80 ++
.../plc4x/java/spi/PlcMessageToMessageCodec.java | 60 ++
.../java/spi/configuration/Configuration.java | 23 +
.../spi/configuration/ConfigurationFactory.java | 241 +++++
.../java/spi/configuration/HasConfiguration.java | 38 +
.../annotations/ConfigurationParameter.java | 33 +
.../spi/configuration/annotations/Required.java | 30 +
.../annotations/defaults/BooleanDefaultValue.java | 33 +
.../annotations/defaults/DoubleDefaultValue.java | 33 +
.../annotations/defaults/IntDefaultValue.java | 33 +
.../annotations/defaults/StringDefaultValue.java | 33 +
.../java/spi/connection/AbstractPlcConnection.java | 193 ++++
.../plc4x/java/spi/connection/ChannelFactory.java | 37 +
.../spi/connection/DefaultNettyPlcConnection.java | 187 ++++
.../spi/connection/DefaultPlcFieldHandler.java | 97 ++
.../java/spi/connection/GeneratedDriverBase.java | 131 +++
.../connection/GeneratedProtocolMessageCodec.java | 72 ++
.../java/spi/connection/NettyChannelFactory.java | 157 +++
.../apache/plc4x/java/spi/connection/Parser.java | 29 +
.../plc4x/java/spi/connection/PlcFieldHandler.java | 58 ++
.../spi/connection/ProtocolStackConfigurer.java | 31 +
.../java/spi/connection/ReflectionBasedIo.java | 67 ++
.../plc4x/java/spi/connection/Serializer.java | 29 +
.../connection/SingleProtocolStackConfigurer.java | 136 +++
.../java/spi/events/CloseConnectionEvent.java | 23 +
.../apache/plc4x/java/spi/events/ConnectEvent.java | 22 +
.../plc4x/java/spi/events/ConnectedEvent.java | 22 +
.../plc4x/java/spi/events/DisconnectEvent.java | 39 +
.../plc4x/java/spi/events/DisconnectedEvent.java | 22 +
.../exceptions/InternalPlcRuntimeException.java | 41 +
.../java/spi/generation/EvaluationHelper.java | 58 ++
.../apache/plc4x/java/spi/generation/Message.java | 26 +
.../plc4x/java/spi/generation/MessageIO.java | 23 +
.../plc4x/java/spi/generation/MessageInput.java | 25 +
.../plc4x/java/spi/generation/MessageOutput.java | 25 +
.../plc4x/java/spi/generation/ParseException.java | 32 +
.../plc4x/java/spi/generation/ReadBuffer.java | 265 +++++
.../plc4x/java/spi/generation/StaticHelper.java | 79 ++
.../plc4x/java/spi/generation/WriteBuffer.java | 212 ++++
.../spi/internal/DefaultSendRequestContext.java | 138 +++
.../java/spi/internal/HandlerRegistration.java | 86 ++
.../spi/messages/DefaultPlcProprietaryRequest.java | 43 +
.../messages/DefaultPlcProprietaryResponse.java | 42 +
.../java/spi/messages/DefaultPlcReadRequest.java | 118 +++
.../java/spi/messages/DefaultPlcReadResponse.java | 616 ++++++++++++
.../spi/messages/DefaultPlcSubscriptionEvent.java | 55 +
.../messages/DefaultPlcSubscriptionRequest.java | 173 ++++
.../messages/DefaultPlcSubscriptionResponse.java | 90 ++
.../messages/DefaultPlcUnsubscriptionRequest.java | 90 ++
.../messages/DefaultPlcUnsubscriptionResponse.java | 36 +
.../java/spi/messages/DefaultPlcWriteRequest.java | 276 ++++++
.../java/spi/messages/DefaultPlcWriteResponse.java | 62 ++
.../java/spi/messages/InternalPlcFieldRequest.java | 31 +
.../spi/messages/InternalPlcFieldResponse.java | 26 +
.../java/spi/messages/InternalPlcMessage.java | 23 +
.../messages/InternalPlcProprietaryRequest.java | 22 +
.../messages/InternalPlcProprietaryResponse.java | 22 +
.../java/spi/messages/InternalPlcReadRequest.java | 26 +
.../java/spi/messages/InternalPlcReadResponse.java | 32 +
.../java/spi/messages/InternalPlcRequest.java | 24 +
.../java/spi/messages/InternalPlcResponse.java | 25 +
.../spi/messages/InternalPlcSubscriptionEvent.java | 25 +
.../messages/InternalPlcSubscriptionRequest.java | 36 +
.../messages/InternalPlcSubscriptionResponse.java | 30 +
.../messages/InternalPlcUnsubscriptionRequest.java | 29 +
.../InternalPlcUnsubscriptionResponse.java | 25 +
.../java/spi/messages/InternalPlcWriteRequest.java | 36 +
.../spi/messages/InternalPlcWriteResponse.java | 28 +
.../java/spi/messages/PlcProprietaryRequest.java | 25 +
.../java/spi/messages/PlcProprietaryResponse.java | 25 +
.../java/spi/messages/PlcProprietarySender.java | 25 +
.../java/spi/messages/PlcProtocolMessage.java | 25 +
.../plc4x/java/spi/messages/PlcRawMessage.java | 46 +
.../apache/plc4x/java/spi/messages/PlcReader.java | 40 +
.../java/spi/messages/PlcRequestContainer.java | 85 ++
.../plc4x/java/spi/messages/PlcSubscriber.java | 63 ++
.../apache/plc4x/java/spi/messages/PlcWriter.java | 40 +
.../spi/model/DefaultPlcConsumerRegistration.java | 85 ++
.../spi/model/DefaultPlcSubscriptionHandle.java | 62 ++
.../spi/model/InternalPlcConsumerRegistration.java | 32 +
.../spi/model/InternalPlcSubscriptionHandle.java | 25 +
.../plc4x/java/spi/model/SubscriptionPlcField.java | 55 +
.../spi/optimizer/RequestTransactionManager.java | 194 ++++
.../SingleItemToSingleRequestProtocol.java | 668 +++++++++++++
.../apache/plc4x/java/spi/request/PlcRequest.java | 28 +
.../apache/plc4x/java/spi/transport/Transport.java | 32 +
.../java/spi/transport/TransportConfiguration.java | 25 +
.../org/apache/plc4x/java/spi/types/FieldType.java | 47 +
.../internal/DefaultSendRequestContextTest.java | 116 +++
.../optimizer/RequestTransactionManagerTest.java | 170 ++++
.../java/spi/parser/ConnectionParserTest.java | 72 ++
plc4j/tools/connection-pool/pom.xml | 52 +
.../plc4x/java/utils/connectionpool/PoolKey.java | 0
.../java/utils/connectionpool/PoolKeyFactory.java | 0
.../connectionpool/PooledPlcConnectionFactory.java | 0
.../connectionpool/PooledPlcDriverManager.java | 0
.../utils/connectionpool/PoolKeyFactoryTest.java | 0
.../utils/connectionpool/PooledDummyDriver.java | 52 +
.../connectionpool/PooledPlcDriverManagerTest.java | 367 +++++++
.../services/org.apache.plc4x.java.api.PlcDriver} | 0
.../connection-pool/src/test/resources/logback.xml | 0
plc4j/tools/interop/pom.xml | 217 ++++
.../interop/src/assembly/assembly.xml | 0
.../java/org/apache/plc4x/interop/impl/Client.java | 0
.../org/apache/plc4x/interop/impl/Handler.java | 163 +++
.../java/org/apache/plc4x/interop/impl/Server.java | 97 ++
plc4j/tools/opm/pom.xml | 94 ++
.../org/apache/plc4x/java/opm/AliasRegistry.java | 0
.../org/apache/plc4x/java/opm/OPMException.java | 0
.../java/org/apache/plc4x/java/opm/OpmUtils.java | 0
.../java/org/apache/plc4x/java/opm/PlcEntity.java | 0
.../plc4x/java/opm/PlcEntityInterceptor.java | 565 +++++++++++
.../apache/plc4x/java/opm/PlcEntityManager.java | 0
.../java/org/apache/plc4x/java/opm/PlcField.java | 0
.../apache/plc4x/java/opm/SimpleAliasRegistry.java | 0
.../opm/src/site/asciidoc/opm/using-opm.adoc | 0
plc4j/{utils => tools}/opm/src/site/site.xml | 0
.../apache/plc4x/java/opm/ConnectedEntityTest.java | 119 +++
.../apache/plc4x/java/opm/OPMExceptionTest.java | 0
.../org/apache/plc4x/java/opm/OpmUtilsTest.java | 0
.../plc4x/java/opm/PlcEntityInterceptorTest.java | 233 +++++
.../java/opm/PlcEntityManagerComplexTest.java | 470 +++++++++
.../plc4x/java/opm/PlcEntityManagerTest.java | 318 ++++++
.../plc4x/java/opm/SimpleAliasRegistryTest.java | 0
.../opm/src/test/resources/logback.xml | 0
plc4j/tools/pom.xml | 52 +
plc4j/{utils => tools}/scraper/README.md | 0
plc4j/tools/scraper/pom.xml | 133 +++
.../apache/plc4x/java/scraper/ResultHandler.java | 0
.../org/apache/plc4x/java/scraper/ScrapeJob.java | 0
.../apache/plc4x/java/scraper/ScrapeJobImpl.java | 0
.../org/apache/plc4x/java/scraper/Scraper.java | 0
.../org/apache/plc4x/java/scraper/ScraperImpl.java | 0
.../org/apache/plc4x/java/scraper/ScraperTask.java | 0
.../apache/plc4x/java/scraper/ScraperTaskImpl.java | 0
.../java/scraper/config/JobConfiguration.java | 0
.../config/JobConfigurationClassicImpl.java | 0
.../config/JobConfigurationClassicImplBuilder.java | 0
.../java/scraper/config/JobConfigurationImpl.java | 0
.../java/scraper/config/ScraperConfiguration.java | 0
.../config/ScraperConfigurationClassicImpl.java | 0
.../ScraperConfigurationClassicImplBuilder.java | 0
.../JobConfigurationTriggeredImpl.java | 0
.../JobConfigurationTriggeredImplBuilder.java | 0
.../ScraperConfigurationTriggeredImpl.java | 0
.../ScraperConfigurationTriggeredImplBuilder.java | 0
.../exception/ScraperConfigurationException.java | 0
.../java/scraper/exception/ScraperException.java | 0
.../triggeredscraper/TriggeredScrapeJobImpl.java | 0
.../triggeredscraper/TriggeredScraperImpl.java | 366 +++++++
.../triggeredscraper/TriggeredScraperMBean.java | 0
.../triggeredscraper/TriggeredScraperTask.java | 0
.../TriggeredScraperTaskMBean.java | 0
.../triggerhandler/TriggerConfiguration.java | 722 ++++++++++++++
.../triggerhandler/TriggerHandler.java | 0
.../triggerhandler/TriggerHandlerImpl.java | 0
.../triggerhandler/collector/TriggerCollector.java | 0
.../collector/TriggerCollectorImpl.java | 0
.../scraper/util/PercentageAboveThreshold.java | 0
.../apache/plc4x/java/s7/ManualS7PlcDriverMT.java | 0
.../java/scraper/ScraperConfigurationTest.java | 0
.../apache/plc4x/java/scraper/ScraperRunner.java | 0
.../apache/plc4x/java/scraper/ScraperTaskTest.java | 113 +++
.../org/apache/plc4x/java/scraper/ScraperTest.java | 175 ++++
.../plc4x/java/scraper/TriggeredScraperRunner.java | 0
.../java/scraper/TriggeredScraperRunnerModbus.java | 62 ++
.../config/ScraperConfigurationBuilderTest.java | 0
.../triggeredscraper/TriggeredScraperImplTest.java | 118 +++
.../triggerhandler/TriggerConfigurationTest.java | 150 +++
.../scraper/src/test/resources/config.json | 0
.../scraper/src/test/resources/config.yml | 0
.../scraper/src/test/resources/example.yml | 0
.../test/resources/example_triggered_scraper.yml | 0
.../resources/example_triggered_scraper_modbus.yml | 0
.../src/test/resources/example_with_strings.yml | 0
.../scraper/src/test/resources/logback-test.xml | 0
.../scraper/src/test/resources/logback.xml | 0
.../src/test/resources/mock-scraper-config.yml | 0
plc4j/transports/pcap-socket/pom.xml | 63 ++
.../java/transport/pcap/PcapChannelFactory.java | 68 ++
.../plc4x/java/transport/pcap/PcapTransport.java | 50 +
.../transport/pcap/PcapTransportConfiguration.java | 34 +
.../org.apache.plc4x.java.spi.transport.Transport | 20 +
plc4j/transports/pom.xml | 45 +
plc4j/transports/raw-socket/pom.xml | 58 ++
.../rawsocket/RawSocketChannelFactory.java | 57 ++
.../transport/rawsocket/RawSocketTransport.java | 43 +
.../rawsocket/RawSocketTransportConfiguration.java | 27 +
.../org.apache.plc4x.java.spi.transport.Transport | 20 +
plc4j/transports/serial/pom.xml | 83 ++
.../plc4x/java/transport/serial/SerialChannel.java | 636 ++++++++++++
.../transport/serial/SerialChannelFactory.java | 65 ++
.../transport/serial/SerialChannelHandler.java | 181 ++++
.../transport/serial/SerialPollingSelector.java | 176 ++++
.../java/transport/serial/SerialSelectionKey.java | 86 ++
.../transport/serial/SerialSelectorProvider.java | 68 ++
.../java/transport/serial/SerialSocketAddress.java | 50 +
.../java/transport/serial/SerialSocketChannel.java | 158 +++
.../java/transport/serial/SerialTransport.java | 42 +
.../serial/SerialTransportConfiguration.java | 25 +
.../org.apache.plc4x.java.spi.transport.Transport | 20 +
.../base/connection/SerialChannelFactoryTest.java | 116 +++
plc4j/transports/tcp/pom.xml | 58 ++
.../java/transport/tcp/TcpChannelFactory.java | 62 ++
.../plc4x/java/transport/tcp/TcpTransport.java | 81 ++
.../transport/tcp/TcpTransportConfiguration.java | 49 +
.../org.apache.plc4x.java.spi.transport.Transport | 20 +
plc4j/transports/test/pom.xml | 84 ++
.../java/transport/test/TestChannelFactory.java | 58 ++
.../java/transport/test/TestSocketAddress.java | 29 +
.../plc4x/java/transport/test/TestTransport.java | 42 +
.../transport/test/TestTransportConfiguration.java | 25 +
...spockframework.report.IReportCreator.properties | 0
.../services/org.apache.plc4x.java.api.PlcDriver} | 0
.../org.apache.plc4x.java.spi.transport.Transport | 20 +
plc4j/transports/udp/pom.xml | 66 ++
.../java/transport/udp/UdpChannelFactory.java | 65 ++
.../plc4x/java/transport/udp/UdpTransport.java | 81 ++
.../transport/udp/UdpTransportConfiguration.java | 31 +
.../udp/protocol/DatagramUnpackingHandler.java | 39 +
.../org.apache.plc4x.java.spi.transport.Transport | 20 +
plc4j/utils/connection-pool/pom.xml | 51 -
.../utils/connectionpool/PooledDummyDriver.java | 52 -
.../connectionpool/PooledPlcDriverManagerTest.java | 367 -------
plc4j/utils/driver-base-java/pom.xml | 42 -
.../apache/plc4x/java/utils/EvaluationHelper.java | 58 --
.../java/org/apache/plc4x/java/utils/Message.java | 26 -
.../org/apache/plc4x/java/utils/MessageIO.java | 23 -
.../org/apache/plc4x/java/utils/MessageInput.java | 25 -
.../org/apache/plc4x/java/utils/MessageOutput.java | 25 -
.../apache/plc4x/java/utils/ParseException.java | 32 -
.../org/apache/plc4x/java/utils/ReadBuffer.java | 254 -----
.../org/apache/plc4x/java/utils/WriteBuffer.java | 208 ----
plc4j/utils/interop/pom.xml | 216 ----
.../org/apache/plc4x/interop/impl/Handler.java | 160 ---
.../java/org/apache/plc4x/interop/impl/Server.java | 91 --
plc4j/utils/opm/pom.xml | 103 --
.../plc4x/java/opm/PlcEntityInterceptor.java | 569 -----------
.../apache/plc4x/java/opm/ConnectedEntityTest.java | 119 ---
.../plc4x/java/opm/PlcEntityInterceptorTest.java | 214 ----
.../java/opm/PlcEntityManagerComplexTest.java | 460 ---------
.../plc4x/java/opm/PlcEntityManagerTest.java | 318 ------
.../utils/pcapsockets/netty/PacketHandler.java | 27 -
.../utils/pcapsockets/netty/PcapSocketAddress.java | 21 +-
.../utils/pcapsockets/netty/PcapSocketChannel.java | 20 +-
.../pcapsockets/netty/PcapSocketChannelConfig.java | 47 +-
.../pcapsockets/netty/PcapSocketChannelOption.java | 21 +-
.../pcapsockets/netty/TcpIpPacketHandler.java | 41 -
.../pcapsockets/netty/UdpIpPacketHandler.java | 41 -
.../pcapsockets/netty/handlers/PacketHandler.java | 27 +
.../netty/handlers/TcpIpPacketHandler.java | 41 +
.../netty/handlers/UdpIpPacketHandler.java | 41 +
plc4j/utils/pom.xml | 20 +-
plc4j/utils/protocol-test-utils/pom.xml | 72 --
.../protocol/test/ProtocolTestsuiteRunner.java | 175 ----
.../exceptions/ProtocolTestsuiteException.java | 32 -
.../protocol/test/model/ProtocolTestsuite.java | 48 -
.../apache/plc4x/protocol/test/model/Testcase.java | 61 --
.../utils/rawsockets/netty/RawSocketAddress.java | 1 +
.../utils/rawsockets/netty/RawSocketChannel.java | 3 +-
plc4j/utils/scraper/pom.xml | 145 ---
.../triggeredscraper/TriggeredScraperImpl.java | 367 -------
.../triggerhandler/TriggerConfiguration.java | 722 --------------
.../apache/plc4x/java/scraper/ScraperTaskTest.java | 113 ---
.../org/apache/plc4x/java/scraper/ScraperTest.java | 175 ----
.../java/scraper/TriggeredScraperRunnerModbus.java | 69 --
.../triggeredscraper/TriggeredScraperImplTest.java | 118 ---
.../triggerhandler/TriggerConfigurationTest.java | 151 ---
plc4j/utils/test-utils/pom.xml | 37 +-
.../test/protocol/ProtocolTestsuiteRunner.java | 179 ++++
.../exceptions/ProtocolTestsuiteException.java | 32 +
.../test/protocol/model/ProtocolTestsuite.java | 48 +
.../apache/plc4x/test/protocol/model/Testcase.java | 60 ++
.../src/main/resources/schemas/testsuite.xsd | 0
pom.xml | 16 +-
.../main/resources/protocols/amsads/amsads.mspec | 4 +-
.../apache/plc4x/protocol/knxnetip/Ets5Types.java | 46 -
...e.plc4x.plugins.codegenerator.protocol.Protocol | 1 -
.../main/resources/protocols/knxnetip/ets5.mspec | 172 ----
.../resources/protocols/knxnetip/knxnetip.mspec | 154 +++
...e.plc4x.plugins.codegenerator.protocol.Protocol | 2 +-
.../s7/src/main/resources/protocols/s7/s7.mspec | 208 +++-
.../plc4x/codegen/ast/AssignementExpression.java | 6 +-
.../apache/plc4x/codegen/ast/BinaryExpression.java | 6 +-
.../java/org/apache/plc4x/codegen/ast/Block.java | 6 +-
.../apache/plc4x/codegen/ast/CallExpression.java | 6 +-
.../apache/plc4x/codegen/ast/ClassDeclaration.java | 6 +-
.../plc4x/codegen/ast/ConstantExpression.java | 6 +-
.../plc4x/codegen/ast/ConstructorDeclaration.java | 6 +-
.../plc4x/codegen/ast/DeclarationStatement.java | 6 +-
.../apache/plc4x/codegen/ast/FieldDeclaration.java | 6 +-
.../apache/plc4x/codegen/ast/FieldReference.java | 6 +-
.../org/apache/plc4x/codegen/ast/FileNode.java | 6 +-
.../org/apache/plc4x/codegen/ast/IfStatement.java | 6 +-
.../apache/plc4x/codegen/ast/JavaGenerator.java | 69 +-
.../org/apache/plc4x/codegen/ast/LineComment.java | 6 +-
.../java/org/apache/plc4x/codegen/ast/Method.java | 6 +-
.../apache/plc4x/codegen/ast/MethodDefinition.java | 6 +-
.../apache/plc4x/codegen/ast/NewExpression.java | 6 +-
.../plc4x/codegen/ast/ParameterExpression.java | 6 +-
.../org/apache/plc4x/codegen/ast/Primitive.java | 6 +-
.../apache/plc4x/codegen/ast/PythonGenerator.java | 69 +-
.../apache/plc4x/codegen/ast/ReturnStatement.java | 6 +-
.../apache/plc4x/codegen/ast/TypeDefinition.java | 6 +-
.../plc4x/codegen/python/AbstractNodeVisitor.java | 96 +-
.../org/apache/plc4x/codegen/python/AddNode.java | 3 +-
.../org/apache/plc4x/codegen/python/AliasNode.java | 3 +-
.../plc4x/codegen/python/AnnAssignerNode.java | 3 +-
.../org/apache/plc4x/codegen/python/ArgNode.java | 3 +-
.../apache/plc4x/codegen/python/ArgumentsNode.java | 3 +-
.../apache/plc4x/codegen/python/AssignNode.java | 3 +-
.../apache/plc4x/codegen/python/AttributeNode.java | 3 +-
.../apache/plc4x/codegen/python/AugAssignNode.java | 3 +-
.../org/apache/plc4x/codegen/python/BinOpNode.java | 3 +-
.../org/apache/plc4x/codegen/python/CallNode.java | 3 +-
.../apache/plc4x/codegen/python/ClassDefNode.java | 3 +-
.../apache/plc4x/codegen/python/CompareNode.java | 3 +-
.../org/apache/plc4x/codegen/python/EqNode.java | 3 +-
.../org/apache/plc4x/codegen/python/ExprNode.java | 3 +-
.../plc4x/codegen/python/FunctionDefNode.java | 3 +-
.../org/apache/plc4x/codegen/python/IfNode.java | 3 +-
.../plc4x/codegen/python/ImportFromNode.java | 3 +-
.../apache/plc4x/codegen/python/KeywordNode.java | 3 +-
.../org/apache/plc4x/codegen/python/ListNode.java | 3 +-
.../org/apache/plc4x/codegen/python/LoadNode.java | 3 +-
.../apache/plc4x/codegen/python/ModuleNode.java | 3 +-
.../org/apache/plc4x/codegen/python/MultNode.java | 3 +-
.../plc4x/codegen/python/NameConstantNode.java | 3 +-
.../org/apache/plc4x/codegen/python/NameNode.java | 3 +-
.../org/apache/plc4x/codegen/python/NotEqNode.java | 3 +-
.../org/apache/plc4x/codegen/python/NumNode.java | 3 +-
.../org/apache/plc4x/codegen/python/PassNode.java | 3 +-
.../apache/plc4x/codegen/python/ReturnNode.java | 3 +-
.../org/apache/plc4x/codegen/python/StoreNode.java | 3 +-
.../org/apache/plc4x/codegen/python/StrNode.java | 3 +-
.../org/apache/plc4x/codegen/python/TupleNode.java | 3 +-
.../org/apache/plc4x/codegen/python/WhileNode.java | 3 +-
.../org/apache/plc4x/codegen/ModuleNodeTest.java | 33 +-
sandbox/plc-simulator/pom.xml | 16 +-
.../apache/plc4x/java/s7/utils/StaticHelper.java | 137 +++
.../server/s7/protocol/S7Step7Protocol.java | 12 +-
.../server/s7/protocol/S7Step7ServerProtocol.java | 2 +-
sandbox/pom.xml | 9 +-
sandbox/test-java-amsads-driver/pom.xml | 28 +-
.../apache/plc4x/java/amsads/AMSADSPlcDriver.java | 84 +-
.../amsads/configuration/AdsConfiguration.java | 74 ++
.../connection/AdsAbstractPlcConnection.java | 21 +-
.../amsads/connection/AdsConnectionFactory.java | 1 +
.../amsads/connection/AdsSerialPlcConnection.java | 45 +-
.../amsads/connection/AdsTcpPlcConnection.java | 73 +-
.../apache/plc4x/java/amsads/field/AdsField.java | 27 +
.../plc4x/java/amsads/field/AdsFieldHandler.java | 1047 ++++++++++++++++++++
.../plc4x/java/amsads/field/DirectAdsField.java | 142 +++
.../plc4x/java/amsads/field/SymbolicAdsField.java | 106 ++
.../plc4x/java/amsads/model/AdsDataType.java | 577 -----------
.../apache/plc4x/java/amsads/model/AdsField.java | 26 -
.../java/amsads/model/AdsPlcFieldHandler.java | 1015 -------------------
.../java/amsads/model/AdsSubscriptionHandle.java | 5 +-
.../plc4x/java/amsads/model/DirectAdsField.java | 141 ---
.../plc4x/java/amsads/model/SymbolicAdsField.java | 105 --
.../plc4x/java/amsads/model/package-info.java | 22 -
.../java/amsads/protocol/Ads2PayloadProtocol.java | 7 +-
.../java/amsads/protocol/AdsProtocolLogic.java | 41 +
.../amsads/protocol/Payload2SerialProtocol.java | 15 +-
.../java/amsads/protocol/Payload2TcpProtocol.java | 7 +-
.../java/amsads/protocol/Plc4x2AdsProtocol.java | 35 +-
.../amsads/protocol/util/LittleEndianDecoder.java | 204 +++-
.../amsads/protocol/util/LittleEndianEncoder.java | 2 +-
.../protocol/util/SingleMessageRateLimiter.java | 2 +-
.../plc4x/java/amsads/types/AdsDataType.java | 577 +++++++++++
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
.../protocol/amsads/BenchmarkGeneratedDf1.java | 4 -
.../org/apache/plc4x/protocol/amsads/Df1Test.java | 3 +-
.../org/apache/plc4x/protocol/amsads/IOTest.java | 6 -
sandbox/test-java-bacnetip-driver/pom.xml | 22 +-
.../plc4x/java/bacnetip/PassiveBacNetIpDriver.java | 89 +-
.../PassiveBacNetIpConfiguration.java | 61 ++
.../bacnetip/connection/BacNetIpFieldHandler.java | 36 -
.../connection/PassiveBacNetIpPlcConnection.java | 118 ---
.../plc4x/java/bacnetip/field/BacNetIpField.java | 47 +
.../java/bacnetip/field/BacNetIpFieldHandler.java | 35 +
.../plc4x/java/bacnetip/model/BacNetIpField.java | 47 -
.../java/bacnetip/protocol/BacNetIpProtocol.java | 62 --
.../java/bacnetip/protocol/HelloWorldProtocol.java | 72 --
.../protocol/PassiveBacNetIpProtocolLogic.java | 47 +
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
.../plc4x/java/bacnetip/ManualBacNetDecoder.java | 2 +-
.../java/bacnetip/PassiveBacNetIpDriverManual.java | 17 +-
sandbox/test-java-df1-driver/pom.xml | 25 +-
.../org/apache/plc4x/java/df1/DF1PlcDriver.java | 59 +-
.../java/org/apache/plc4x/java/df1/Df1Field.java | 62 --
.../java/df1/configuration/Df1Configuration.java | 33 +
.../java/df1/connection/BaseDf1Connection.java | 34 -
.../java/df1/connection/SerialDf1Connection.java | 148 ---
.../org/apache/plc4x/java/df1/field/Df1Field.java | 61 ++
.../plc4x/java/df1/field/Df1FieldHandler.java | 39 +
.../org/apache/plc4x/java/df1/fields/DataType.java | 44 -
.../plc4x/java/df1/protocol/Df1Protocol.java | 14 +-
.../plc4x/java/df1/protocol/Df1ProtocolLogic.java | 43 +
.../plc4x/java/df1/protocol/Plc4XDf1Protocol.java | 23 +-
.../org/apache/plc4x/java/df1/types/DataType.java | 44 +
.../org/apache/plc4x/java/df1/util/DF1Utils.java | 14 +-
.../plc4x/java/df1/util/Df1FieldHandler.java | 39 -
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
.../apache/plc4x/java/df1/DF1PlcDriverTest.java | 44 -
.../plc4x/protocol/df1/BenchmarkGeneratedDf1.java | 5 -
.../org/apache/plc4x/protocol/df1/Df1Test.java | 2 +-
.../java/org/apache/plc4x/protocol/df1/IOTest.java | 2 +-
.../src/test/resources/testsuite/Df1Testsuite.xml | 8 +-
sandbox/test-java-knxnetip-driver-passive/pom.xml | 15 +-
.../passive/knxnetip/PassiveKnxNetIpDriver.java | 2 +-
.../knxnetip/connection/KnxNetIpFieldHandler.java | 2 +-
.../connection/PassiveKnxNetIpPlcConnection.java | 16 +-
.../knxnetip/protocol/HelloWorldProtocol.java | 4 +-
.../knxnetip/protocol/KnxNetIpProtocol.java | 59 --
.../knxnetip/protocol/KnxNetIpProtocolMessage.java | 59 ++
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
.../org/apache/plc4x/java/knxnetip/IOTest.java | 7 +-
sandbox/test-java-knxnetip-driver/pom.xml | 32 +-
.../apache/plc4x/java/knxnetip/KnxNetIpDriver.java | 93 +-
.../configuration/KnxNetIpConfiguration.java | 65 ++
.../knxnetip/connection/KnxNetIpConnection.java | 137 ---
.../knxnetip/connection/KnxNetIpFieldHandler.java | 36 -
.../java/knxnetip/events/KnxGatewayFoundEvent.java | 22 -
.../plc4x/java/knxnetip/field/KnxNetIpField.java | 86 ++
.../java/knxnetip/field/KnxNetIpFieldHandler.java | 35 +
.../plc4x/java/knxnetip/model/KnxNetIpField.java | 44 -
.../knxnetip/protocol/KnxNetIpPlc4xProtocol.java | 61 --
.../knxnetip/protocol/KnxNetIpProtocolLogic.java | 328 ++++--
.../knxnetip/protocol/KnxNetIpProtocolPackets.java | 59 --
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
.../org/apache/plc4x/java/knxnetip/IOTest.java | 8 +-
.../apache/plc4x/java/knxnetip/KNXNetIpTest.java | 2 +-
.../apache/plc4x/java/knxnetip/ManualKnxNetIp.java | 2 +-
.../java/knxnetip/ManualKnxNetIpWithEts5.java | 18 +-
.../src/test}/resources/logback.xml | 0
.../test/resources/testsuite/KNXNetIPTestsuite.xml | 2 +-
sandbox/test-java-knxnetip-shared/pom.xml | 41 +-
.../plc4x/java/knxnetip/ets5/Ets5Parser.java | 18 +-
.../plc4x/java/knxnetip/ets5/model/Ets5Model.java | 41 +-
.../java/knxnetip/ets5/model/GroupAddress.java | 9 +-
sandbox/test-java-s7-driver-passive/pom.xml | 5 +-
.../apache/plc4x/java/s7/utils/StaticHelper.java | 136 +++
.../plc4x/javapassive/s7/PassiveS7PlcDriver.java | 2 +-
.../s7/connection/PassiveS7PlcConnection.java | 16 +-
.../s7/protocol/HelloWorldProtocol.java | 4 +-
.../javapassive/s7/protocol/PassiveS7Protocol.java | 8 +-
...cDriver => org.apache.plc4x.java.api.PlcDriver} | 0
.../src/test/java/BenchmarkGeneratedPassiveS7.java | 4 +-
sandbox/test-java-s7-driver/pom.xml | 38 +-
.../apache/plc4x/java/s7/readwrite/S7Driver.java | 106 ++
.../readwrite/configuration/S7Configuration.java | 148 +++
.../plc4x/java/s7/readwrite/field/S7Field.java | 265 +++++
.../java/s7/readwrite/field/S7PlcFieldHandler.java | 584 +++++++++++
.../optimizer/DefaultS7MessageProcessor.java | 290 ++++++
.../s7/readwrite/optimizer/S7MessageProcessor.java | 40 +
.../s7/readwrite/protocol/S7ProtocolLogic.java | 693 +++++++++++++
.../java/s7/readwrite/types/S7ControllerType.java | 30 +
.../java/s7/readwrite/utils/S7TsapIdEncoder.java | 48 +
.../apache/plc4x/java/s7/utils/StaticHelper.java | 138 +++
.../services/org.apache.plc4x.java.api.PlcDriver | 19 +
.../src/main/resources/logback.xml | 36 +
.../src/test/java/BenchmarkGeneratedS7.java | 8 +-
.../java/s7/readwrite/ManualS7DriverTest.java | 33 +
sandbox/test-streampipes-plc4x-adapters/pom.xml | 16 +-
.../adapters/source/bacnetip/BacNetIpAdapter.java | 23 +-
.../adapters/source/knxnetip/KnxNetIpAdapter.java | 20 +-
sandbox/test-streampipes-plc4x-processors/pom.xml | 12 +-
.../enrich/knxnetip/ets5/Ets5DataEnrichment.java | 38 +-
.../ets5/Ets5DataEnrichmentController.java | 3 +-
src/main/script/prerequisiteCheck.groovy | 34 +
src/site/asciidoc/users/testing.adoc | 12 +-
tools/thrift/pom.xml | 12 +
920 files changed, 32509 insertions(+), 28469 deletions(-)