You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by cd...@apache.org on 2019/10/26 15:40:42 UTC
[plc4x] 01/01: Merge branches 'develop' and 'feature/new-site-skin'
of https://gitbox.apache.org/repos/asf/plc4x into feature/new-site-skin
This is an automated email from the ASF dual-hosted git repository.
cdutz pushed a commit to branch feature/new-site-skin
in repository https://gitbox.apache.org/repos/asf/plc4x.git
commit 008046e19f12a90a1fbc98c85c17a5cae06d3642
Merge: 847f113 d1629cb
Author: Christofer Dutz <ch...@c-ware.de>
AuthorDate: Sat Oct 26 17:40:23 2019 +0200
Merge branches 'develop' and 'feature/new-site-skin' of https://gitbox.apache.org/repos/asf/plc4x into feature/new-site-skin
LICENSE | 7 +-
README => README.md | 199 ++++++++----
RELEASE_NOTES | 34 ++-
build-utils/language-base-freemarker/pom.xml | 2 +-
build-utils/language-java/pom.xml | 4 +-
.../language/java/JavaLanguageTemplateHelper.java | 14 +
.../main/resources/templates/java/io-template.ftlh | 6 +-
.../resources/templates/java/pojo-template.ftlh | 11 +-
build-utils/pom.xml | 2 +-
build-utils/protocol-base-mspec/pom.xml | 2 +-
.../language/mspec/expression/Expression.g4 | 14 +-
.../mspec/expression/ExpressionStringListener.java | 101 +++++-
.../mspec/expression/ExpressionStringParser.java | 1 -
.../mspec/parser/MessageFormatListener.java | 20 +-
build-utils/protocol-test/pom.xml | 10 +-
plc4cpp/pom.xml | 12 +-
plc4j/api/pom.xml | 4 +-
.../drivers/ab-eth}/pom.xml | 57 ++--
.../org/apache/plc4x/java/abeth/AbEthDriver.java | 0
.../java/abeth/connection/AbEthFieldHandler.java | 0
.../java/abeth/connection/AbEthPlcConnection.java | 3 +-
.../apache/plc4x/java/abeth/model/AbEthField.java | 17 +-
.../plc4x/java/abeth/model/types/FileType.java | 4 +-
.../plc4x/java/abeth/protocol/AbEthProtocol.java | 0
.../java/abeth/protocol/Plc4xAbEthProtocol.java | 25 +-
.../services/org.apache.plc4x.java.spi.PlcDriver | 0
.../org/apache/plc4x/protocol/abeth/AbEthTest.java | 0
.../test/resources/testsuite/AbEthTestsuite.xml | 15 +-
plc4j/drivers/ads/pom.xml | 25 +-
.../org/apache/plc4x/java/ads/AdsPlcDriver.java | 2 +
.../ads/connection/AdsSerialPlcConnection.java | 2 +-
.../java/ads/connection/AdsTcpPlcConnection.java | 3 +-
.../apache/plc4x/java/ads/AdsPlcDriverTest.java | 2 +-
.../ads/connection/AdsConnectionFactoryTest.java | 4 +-
.../ads/connection/AdsSerialPlcConnectionTest.java | 4 +-
plc4j/drivers/ethernet-ip/pom.xml | 17 +-
.../plc4x/java/ethernetip/EtherNetIpPlcDriver.java | 2 +
.../connection/EtherNetIpTcpPlcConnection.java | 3 +-
plc4j/drivers/modbus/pom.xml | 21 +-
.../apache/plc4x/java/modbus/ModbusPlcDriver.java | 2 +
.../connection/ModbusSerialPlcConnection.java | 2 +-
.../modbus/connection/ModbusTcpPlcConnection.java | 3 +-
.../plc4x/java/modbus/ModbusPlcDriverTest.java | 2 +-
.../connection/ModbusConnectionFactoryTest.java | 4 +-
.../connection/ModbusSerialPlcConnectionTest.java | 4 +-
plc4j/drivers/opcua/pom.xml | 12 +-
.../apache/plc4x/java/opcua/OpcuaPlcDriver.java | 2 +
plc4j/drivers/pom.xml | 3 +-
plc4j/drivers/s7/pom.xml | 24 +-
.../java/org/apache/plc4x/java/s7/S7PlcDriver.java | 2 +
.../plc4x/java/s7/connection/S7PlcConnection.java | 2 +-
.../java/s7/connection/S7PlcTestConnection.java | 2 +-
plc4j/drivers/simulated/pom.xml | 13 +-
.../plc4x/java/simulated/SimulatedPlcDriver.java | 2 +
plc4j/examples/dummy-driver/pom.xml | 8 +-
.../dummydriver/connection/DummyConnection.java | 2 +-
plc4j/examples/hello-cloud-azure/pom.xml | 16 +-
plc4j/examples/hello-cloud-google/pom.xml | 16 +-
plc4j/examples/hello-connectivity-kafka/pom.xml | 18 +-
plc4j/examples/hello-connectivity-mqtt/pom.xml | 16 +-
plc4j/examples/hello-integration-edgent/pom.xml | 16 +-
plc4j/examples/hello-opm/pom.xml | 18 +-
plc4j/examples/hello-storage-elasticsearch/pom.xml | 24 +-
plc4j/examples/hello-webapp/client/pom.xml | 2 +-
plc4j/examples/hello-webapp/pom.xml | 2 +-
plc4j/examples/hello-webapp/service/pom.xml | 16 +-
plc4j/examples/hello-webapp/webapp/pom.xml | 6 +-
plc4j/examples/hello-world-plc4x/pom.xml | 16 +-
plc4j/examples/pom.xml | 2 +-
plc4j/integrations/apache-calcite/pom.xml | 10 +-
plc4j/integrations/apache-camel/pom.xml | 10 +-
plc4j/integrations/apache-edgent/pom.xml | 10 +-
.../apache/plc4x/edgent/PlcConnectionAdapter.java | 37 +--
.../apache/plc4x/edgent/mock/MockConnection.java | 2 +-
plc4j/integrations/apache-kafka/pom.xml | 20 +-
.../apache-karaf/karaf-ads-feature/pom.xml | 61 ----
.../apache-karaf/karaf-demo-server/pom.xml | 127 --------
.../apache-karaf/karaf-ethernet-ip-feature/pom.xml | 61 ----
.../apache-karaf/karaf-modbus-feature/pom.xml | 61 ----
.../apache-karaf/karaf-s7-feature/pom.xml | 61 ----
.../apache-karaf/karaf-simulated-feature/pom.xml | 61 ----
plc4j/integrations/apache-karaf/pom.xml | 98 ------
.../apache-nifi/nifi-plc4x-nar/pom.xml | 16 +-
.../apache-nifi/nifi-plc4x-processors/pom.xml | 4 +-
plc4j/integrations/apache-nifi/pom.xml | 2 +-
plc4j/integrations/logstash-plugin/README.md | 18 +-
plc4j/integrations/logstash-plugin/pom.xml | 25 +-
.../main/java/org/apache/plc4x/logstash/Plc4x.java | 23 +-
plc4j/integrations/pom.xml | 3 +-
plc4j/karaf-features/README.md | 42 +++
plc4j/karaf-features/karaf-itest/pom.xml | 188 ++++++++++++
.../java/org/apache/plc4x/karaf/FeatureIT.java | 100 ++++++
.../test/resources/etc/org.ops4j.pax.logging.cfg | 71 +++++
.../{utils/pcap-sockets => karaf-features}/pom.xml | 81 +++--
plc4j/karaf-features/s7/pom.xml | 102 +++++++
.../karaf-features/s7/src/main/feature/feature.xml | 48 +++
.../java/org/apache/plc4x/karaf/FeatureTest.java | 91 ++++++
plc4j/pom.xml | 9 +-
plc4j/protocols/ads/pom.xml | 8 +-
.../java/org/apache/plc4x/java/ads/AdsDumper.java | 2 +-
.../commands/types/AdsNotificationSampleTest.java | 2 +-
.../ads/api/commands/types/AdsStampHeaderTest.java | 2 +-
...load2SerialProtocolExampleConversationTest.java | 2 +-
.../java/ads/protocol/Plc4x2AdsProtocolTest.java | 4 +-
.../java/ads/protocol/util/DigestUtilTest.java | 2 +-
plc4j/protocols/benchmarks/pom.xml | 4 +-
plc4j/protocols/delta-v/pom.xml | 2 +-
plc4j/protocols/driver-bases/base/pom.xml | 6 +-
plc4j/protocols/driver-bases/pcap-socket/pom.xml | 8 +-
plc4j/protocols/driver-bases/pom.xml | 2 +-
plc4j/protocols/driver-bases/raw-socket/pom.xml | 8 +-
plc4j/protocols/driver-bases/serial/pom.xml | 6 +-
.../connection}/connection/SerialChannel.java | 3 +-
.../connection/SerialChannelFactory.java | 3 +-
.../connection/SerialChannelHandler.java | 2 +-
.../connection/SerialPollingSelector.java | 5 +-
.../connection}/connection/SerialSelectionKey.java | 3 +-
.../connection/SerialSelectorProvider.java | 2 +-
.../connection/SerialSocketAddress.java | 2 +-
.../connection/SerialSocketChannel.java | 2 +-
.../base/connection/SerialChannelFactoryTest.java | 3 +
plc4j/protocols/driver-bases/tcp/pom.xml | 6 +-
.../connection/TcpSocketChannelFactory.java | 3 +-
plc4j/protocols/driver-bases/test/pom.xml | 6 +-
.../{base => mock}/connection/MockConnection.java | 3 +-
.../connection/TestChannelFactory.java | 3 +-
.../connection/tcp/TcpHexDumper.java | 2 +-
.../protocol/Plc4XSupportedDataTypes.java | 2 +-
.../plc4x/java/{base => mock}/util/Assert.java | 2 +-
.../plc4x/java/{base => mock}/util/HexUtil.java | 2 +-
plc4j/protocols/driver-bases/udp/pom.xml | 6 +-
plc4j/protocols/ethernet-ip/pom.xml | 6 +-
plc4j/protocols/iso-on-tcp/pom.xml | 8 +-
plc4j/protocols/iso-tp/pom.xml | 10 +-
plc4j/protocols/modbus/pom.xml | 8 +-
.../plc4x/java/modbus/ManualPlc4XModbusTest.java | 2 +-
.../java/modbus/netty/Plc4XModbusProtocolTest.java | 6 +-
plc4j/protocols/pom.xml | 40 ++-
plc4j/protocols/s7/pom.xml | 10 +-
.../org/apache/plc4x/java/s7/netty/S7Protocol.java | 6 +-
.../s7/netty/model/types/HeaderErrorClass.java | 2 +-
.../java/s7/netty/model/types/TransportSize.java | 4 +-
.../strategies/DefaultS7MessageProcessor.java | 51 ++--
plc4j/utils/connection-pool/pom.xml | 4 +-
plc4j/utils/driver-base-java/pom.xml | 2 +-
plc4j/utils/interop/pom.xml | 12 +-
plc4j/utils/opm/pom.xml | 10 +-
plc4j/utils/pcap-sockets/pom.xml | 2 +-
.../utils/pcapsockets/netty/PcapSocketChannel.java | 4 +-
.../pcapsockets/netty/PcapSocketChannelConfig.java | 5 +-
plc4j/utils/pom.xml | 2 +-
plc4j/utils/protocol-test-utils/pom.xml | 4 +-
plc4j/utils/raw-sockets/pom.xml | 4 +-
.../src/remote-resources/META-INF/LICENSE | 6 +-
plc4j/utils/scraper/pom.xml | 18 +-
plc4j/utils/test-utils/pom.xml | 2 +-
plc4net/api/pom.xml | 2 +-
plc4net/plc4net.driver/pom.xml | 2 +-
plc4net/pom.xml | 2 +-
plc4py/pom.xml | 8 +-
pom.xml | 52 ++--
protocols/ab-eth/pom.xml | 4 +-
protocols/bacnetip/pom.xml | 4 +-
.../resources/protocols/bacnetip/bacnetip.mspec | 16 +-
protocols/df1/pom.xml | 4 +-
protocols/knxnetip/pom.xml | 8 +-
protocols/pom.xml | 2 +-
protocols/proxy/pom.xml | 2 +-
protocols/s7/pom.xml | 4 +-
.../s7/src/main/resources/protocols/s7/s7.mspec | 185 ++++++++---
sandbox/code-gen/pom.xml | 6 +-
.../pom.xml | 65 ++--
.../org/apache/plc4x/simulator/PlcSimulator.java | 118 ++++++++
.../plc4x/simulator/server/ServerModule.java | 24 +-
.../apache/plc4x/simulator/server/s7/S7Server.java | 69 +++++
.../plc4x/simulator/server/s7/S7ServerModule.java | 37 ++-
.../server/s7/protocol/S7Step7Protocol.java | 76 +++++
.../server/s7/protocol/S7Step7ServerProtocol.java | 228 ++++++++++++++
.../simulator/simulation/SimulationModule.java | 33 +-
.../watertank/WaterTankSimulationModule.java | 60 ++++
...org.apache.plc4x.simulator.server.ServerModule} | 3 +-
...he.plc4x.simulator.simulation.SimulationModule} | 3 +-
.../plc-simulator/src/main/resources/logback.xml | 42 ++-
sandbox/pom.xml | 6 +-
sandbox/streampipes-connectors/READMME.adoc | 40 +++
.../env/development} | 15 +-
sandbox/streampipes-connectors/pom.xml | 199 ++++++++++++
.../java/streampipes/bacnetip/BacNetIpAdapter.java | 337 +++++++++++++++++++++
.../streampipes/bacnetip/config/ConfigKeys.java | 30 ++
.../bacnetip/config/ConnectWorkerConfig.java | 84 +++++
sandbox/test-java-bacnetip-driver/pom.xml | 26 +-
.../plc4x/java/bacnetip/PassiveBacNetIpDriver.java | 3 +-
.../connection/PassiveBacNetIpPlcConnection.java | 15 +-
.../java/bacnetip/PassiveBacNetIpDriverManual.java | 3 +-
sandbox/test-java-df1-driver/pom.xml | 22 +-
.../java/df1/connection/SerialDf1Connection.java | 2 +-
sandbox/test-java-knxnetip-driver/pom.xml | 14 +-
sandbox/test-java-passive-s7-driver/pom.xml | 16 +-
sandbox/test-java-s7-driver/pom.xml | 12 +-
src/main/script/prerequisiteCheck.groovy | 2 -
src/site/asciidoc/developers/release.adoc | 23 +-
src/site/asciidoc/index.adoc | 4 +-
src/site/asciidoc/protocols/ab-eth/index.adoc | 33 ++
src/site/asciidoc/protocols/index.adoc | 1 +
src/site/asciidoc/users/testing.adoc | 165 ++++++++++
src/site/site.xml | 1 +
tools/boost/pom.xml | 2 +-
tools/check_sigs.sh | 2 +-
tools/download_staged_release.sh | 2 +-
tools/logstash/pom.xml | 51 +---
tools/pom.xml | 2 +-
tools/thrift/pom.xml | 38 ++-
212 files changed, 3501 insertions(+), 1402 deletions(-)
diff --cc src/site/asciidoc/index.adoc
index cbd79f9,76492b2..e54a0c1
--- a/src/site/asciidoc/index.adoc
+++ b/src/site/asciidoc/index.adoc
@@@ -22,11 -22,35 +22,11 @@@
image::iot-lab.jpg[width=480, float=right]
[.lead]
-Just like OPC-UA, but totally different.
+Security and performance by design, but without the costs.
-We are currently probably experiencing the greatest advances in the way we process information in human history.
-While these advances are taking over more and more parts of our world, it seems one large segment has continuously been missing out all the fun.
-
-As everyone is talking about IoT, virtualization, BigData, FastData and machine-learning, the manufacturing industry has seemed to been stuck in a closed-source proprietary world.
-
-Unfortunately the industry's Programmable Logic Controllers (PLCs) communicate with a large number of usually incompatible protocols.
-This has made it difficult to create applications that integrate these systems with the new world.
-
-This is where PLC4X™ comes in:
-
-*It is our goal to create a set of libraries, that allow unified access to any type of PLC*
-
-In general we are trying to achieve the same goal OPC-UA is trying to address, but we try to do this by going a completely different path.
-
-While with OPC-UA every device has to be retrofitted with the ability to speak a new protocol and use a common client to speak with these devices,
-PLC4X tries to provide a unified API by implementing drivers for communicating with most industrial controllers in the protocols they natively understand.
-
-Each of these drivers is being implemented from the specs or by reverse engineering protocols in order to be fully Apache 2.0 licensed.
-
-The major benefits of PLC4X™ over OPC-UA, from our point of view are:
-
-- No need to modify existing hardware
-- Activating OPC-UA support on existing PLCs greatly increases the load on the PLCs
-- No need to pay for licenses to activate OPC-UA support
- At first we will be concentrating on providing adapters for the most widely used protocol such as:
+ At first we will be concentrating on providing adapters for the most widely used protocols such as:
- icon:pause-circle[role=light-gray] BACnet
- icon:check[role=green] link:protocols/ads/index.html[Beckhoff ADS (TCP)]