You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by cd...@apache.org on 2019/05/07 09:12:44 UTC
[plc4x] 01/02: - Refactored the project structure to include
examples and integration modules to the plc4x language they are based on.
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 5bb633858af174a6e7e2ac58d1916c3c6144c358
Author: Christofer Dutz <ch...@c-ware.de>
AuthorDate: Mon Apr 29 15:58:22 2019 +0200
- Refactored the project structure to include examples and integration modules to the plc4x language they are based on.
---
Jenkinsfile | 2 +-
README | 2 +-
integrations/apache-brooklyn/pom.xml | 40 ---
integrations/apache-kafka/config/sink.properties | 25 --
integrations/apache-kafka/config/source.properties | 23 --
plc4cpp/CMakeLists.txt | 7 +-
plc4cpp/{ => examples}/CMakeLists.txt | 15 +-
plc4cpp/{ => examples}/pom.xml | 40 ++-
plc4cpp/{ => integrations}/CMakeLists.txt | 16 +-
.../apache-mynewt}/CMakeLists.txt | 15 +-
.../integrations}/apache-mynewt/pom.xml | 6 +-
.../edgex-foundry}/CMakeLists.txt | 15 +-
.../integrations/edgex-foundry}/pom.xml | 34 +--
{integrations => plc4cpp/integrations}/pom.xml | 14 +-
plc4cpp/pom.xml | 3 +
{examples => plc4j/examples}/dummy-driver/pom.xml | 6 +-
.../java/examples/dummydriver/DummyDriver.java | 4 +-
.../dummydriver/connection/DummyConnection.java | 0
.../examples/dummydriver/model/DummyField.java | 0
.../examples/dummydriver/netty/DummyProtocol.java | 0
.../services/org.apache.plc4x.java.spi.PlcDriver | 0
.../examples}/hello-cloud-azure/pom.xml | 6 +-
.../java/examples/cloud/azure/CliOptions.java | 0
.../cloud/azure/S7PlcToAzureIoTHubSample.java | 0
.../examples}/hello-cloud-google/README.md | 0
.../examples}/hello-cloud-google/pom.xml | 6 +-
.../java/examples/cloud/google/CliOptions.java | 0
.../cloud/google/S7PlcToGoogleIoTCoreSample.java | 0
.../src/main/resources/logback.xml | 0
.../hello-connectivity-kafka/kafka-connector.yml | 0
.../examples}/hello-connectivity-kafka/pom.xml | 6 +-
.../examples}/hello-connectivity-kafka/server.sh | 0
.../connectivity/kafka/KafkaConnector.java | 0
.../connectivity/kafka/model/Configuration.java | 0
.../connectivity/kafka/model/KafkaConfig.java | 0
.../connectivity/kafka/model/PlcConfig.java | 0
.../connectivity/kafka/model/PlcFieldConfig.java | 0
.../connectivity/kafka/model/PlcMemoryBlock.java | 0
.../src/main/resources/logback.xml | 0
.../hello-connectivity-mqtt/mqtt-connector.yml | 0
.../examples}/hello-connectivity-mqtt/pom.xml | 6 +-
.../examples/connectivity/mqtt/MqttConnector.java | 0
.../connectivity/mqtt/model/Configuration.java | 0
.../connectivity/mqtt/model/MqttConfig.java | 0
.../connectivity/mqtt/model/PlcConfig.java | 0
.../connectivity/mqtt/model/PlcFieldConfig.java | 0
.../connectivity/mqtt/model/PlcMemoryBlock.java | 0
.../src/main/resources/logback.xml | 0
.../examples}/hello-integration-edgent/pom.xml | 6 +-
.../examples/integration/edgent/CliOptions.java | 0
.../examples/integration/edgent/PlcLogger.java | 0
.../src/main/resources/logback.xml | 0
{examples => plc4j/examples}/hello-opm/pom.xml | 6 +-
.../plc4x/java/examples/helloopm/HelloOpm.java | 0
.../hello-opm/src/main/resources/logback.xml | 0
.../hello-storage-elasticsearch/README.adoc | 0
.../examples}/hello-storage-elasticsearch/pom.xml | 6 +-
.../elasticsearch/ElasticsearchStorage.java | 0
.../src/main/resources/log4j2.xml | 0
.../src/main/resources/logback.xml | 0
.../examples}/hello-webapp/client/pom.xml | 17 +-
.../client/src/main/royale/HelloPLC4X.mxml | 3 -
.../client/src/main/royale/service/RobotService.as | 5 -
{examples => plc4j/examples}/hello-webapp/pom.xml | 6 +-
.../examples}/hello-webapp/service/pom.xml | 6 +-
.../robot/controllers/RobotController.java | 0
.../examples}/hello-webapp/webapp/pom.xml | 16 +-
.../apache/plc4x/examples/robot/Application.java | 0
.../src/main/resources/application.properties | 0
.../examples}/hello-world-plc4x/pom.xml | 6 +-
.../plc4x/java/examples/helloplc4x/CliOptions.java | 0
.../plc4x/java/examples/helloplc4x/HelloPlc4x.java | 0
.../src/main/resources/logback.xml | 0
{examples => plc4j/examples}/pom.xml | 36 +--
.../integrations}/apache-calcite/pom.xml | 6 +-
.../main/java/org/apache/plc4x/Plc4xBaseTable.java | 0
.../main/java/org/apache/plc4x/Plc4xSchema.java | 0
.../java/org/apache/plc4x/Plc4xSchemaFactory.java | 0
.../java/org/apache/plc4x/Plc4xStreamTable.java | 0
.../src/main/java/org/apache/plc4x/Plc4xTable.java | 0
.../java/org/apache/plc4x/DriverManagerTest.java | 0
.../java/org/apache/plc4x/Plc4XBaseTableTest.java | 0
.../org/apache/plc4x/Plc4xSchemaFactoryTest.java | 2 -
.../apache-calcite/src/test/resources/example.yml | 0
.../apache-calcite}/src/test/resources/logback.xml | 0
.../apache-calcite/src/test/resources/model.json | 0
.../integrations}/apache-camel/pom.xml | 7 +-
.../apache-camel/src/main/docs/PLC4X.adoc | 0
.../java/org/apache/plc4x/camel/Constants.java | 0
.../org/apache/plc4x/camel/Plc4XComponent.java | 0
.../java/org/apache/plc4x/camel/Plc4XConsumer.java | 0
.../java/org/apache/plc4x/camel/Plc4XEndpoint.java | 0
.../apache/plc4x/camel/Plc4XPollingConsumer.java | 0
.../java/org/apache/plc4x/camel/Plc4XProducer.java | 0
.../services/org/apache/camel/component/plc4x | 0
.../java/org/apache/plc4x/camel/ConstantsTest.java | 0
.../java/org/apache/plc4x/camel/ManualTest.java | 0
.../java/org/apache/plc4x/camel/MockDriver.java | 0
.../org/apache/plc4x/camel/Plc4XComponentTest.java | 0
.../org/apache/plc4x/camel/Plc4XConsumerTest.java | 0
.../org/apache/plc4x/camel/Plc4XEndpointTest.java | 0
.../plc4x/camel/Plc4XPollingConsumerTest.java | 0
.../org/apache/plc4x/camel/Plc4XProducerTest.java | 0
.../services/org.apache.plc4x.java.spi.PlcDriver | 0
.../src/test/resources/log4j2.properties | 0
.../apache-camel}/src/test/resources/logback.xml | 0
.../integrations}/apache-edgent/pom.xml | 7 +-
.../apache/plc4x/edgent/PlcConnectionAdapter.java | 0
.../java/org/apache/plc4x/edgent/PlcFunctions.java | 0
.../java/org/apache/plc4x/edgent/package-info.java | 0
.../plc4x/edgent/PlcConnectionAdapterTest.java | 0
.../org/apache/plc4x/edgent/PlcFunctionsTest.java | 0
.../apache/plc4x/edgent/mock/MockConnection.java | 0
.../org/apache/plc4x/edgent/mock/MockDriver.java | 4 +-
.../org/apache/plc4x/edgent/mock/MockField.java | 0
.../apache/plc4x/edgent/mock/MockFieldHandler.java | 0
.../apache/plc4x/edgent/mock/MockFieldItem.java | 0
.../services/org.apache.plc4x.java.spi.PlcDriver | 0
.../integrations}/apache-kafka/README.md | 0
.../apache-kafka/config/sink.properties | 25 ++
.../apache-kafka/config/source.properties | 23 ++
.../integrations}/apache-kafka/pom.xml | 7 +-
.../org/apache/plc4x/kafka/Plc4xSinkConnector.java | 5 +-
.../java/org/apache/plc4x/kafka/Plc4xSinkTask.java | 0
.../apache/plc4x/kafka/Plc4xSourceConnector.java | 3 +-
.../org/apache/plc4x/kafka/Plc4xSourceTask.java | 0
.../org/apache/plc4x/kafka/util/VersionUtil.java | 0
.../apache-karaf/karaf-ads-feature/pom.xml | 15 +-
.../apache-karaf/karaf-demo-server/pom.xml | 28 +-
.../apache-karaf/karaf-ethernet-ip-feature/pom.xml | 15 +-
.../apache-karaf/karaf-modbus-feature/pom.xml | 15 +-
.../apache-karaf/karaf-s7-feature/pom.xml | 15 +-
.../apache-karaf/karaf-simulated-feature/pom.xml | 15 +-
.../integrations}/apache-karaf/pom.xml | 15 +-
.../apache-nifi/nifi-plc4x-nar/false-positives.xml | 0
.../apache-nifi/nifi-plc4x-nar/pom.xml | 23 +-
.../apache-nifi/nifi-plc4x-processors/pom.xml | 6 +-
.../org/apache/plc4x/nifi/BasePlc4xProcessor.java | 0
.../org/apache/plc4x/nifi/Plc4xSinkProcessor.java | 0
.../apache/plc4x/nifi/Plc4xSourceProcessor.java | 0
.../services/org.apache.nifi.processor.Processor | 0
.../plc4x4nifi/Plc4xSinkProcessorTest.java | 0
.../plc4x4nifi/Plc4xSourceProcessorTest.java | 0
.../integrations}/apache-nifi/pom.xml | 6 +-
.../integrations}/pom.xml | 42 ++-
plc4j/pom.xml | 296 ++++++++++++++++++
plc4j/protocols/delta-v/pom.xml | 15 +
pom.xml | 332 ---------------------
148 files changed, 636 insertions(+), 695 deletions(-)
diff --git a/Jenkinsfile b/Jenkinsfile
index e496da6..93e0c5f 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -106,7 +106,7 @@ pipeline {
// We'll deploy to a relative directory so we can save
// that and deploy in a later step on a different node
- sh 'mvn -P${JENKINS_PROFILE},development,with-sandbox ${MVN_TEST_FAIL_IGNORE} ${JQASSISTANT_NEO4J_VERSION} -DaltDeploymentRepository=snapshot-repo::default::file:./local-snapshots-dir clean deploy'
+ sh 'mvn -P${JENKINS_PROFILE},development,with-cpp,with-python,with-proxies,with-sandbox ${MVN_TEST_FAIL_IGNORE} ${JQASSISTANT_NEO4J_VERSION} -DaltDeploymentRepository=snapshot-repo::default::file:./local-snapshots-dir clean deploy'
// Stash the build results so we can deploy them on another node
stash name: 'plc4x-build-snapshots', includes: 'local-snapshots-dir/**'
diff --git a/README b/README
index edd064d..ca79632 100644
--- a/README
+++ b/README
@@ -36,7 +36,7 @@ Linux
On a clean Ubuntu 18.04 the following software needs to be installed:
- sudo apt install bison flex python-dev
+ sudo apt
If you're building a source-distribution and haven't installed git yet, be sure to do so:
diff --git a/integrations/apache-brooklyn/pom.xml b/integrations/apache-brooklyn/pom.xml
deleted file mode 100644
index ea3aeef..0000000
--- a/integrations/apache-brooklyn/pom.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.plc4x</groupId>
- <artifactId>integrations</artifactId>
- <version>0.4.0-SNAPSHOT</version>
- </parent>
-
- <artifactId>apache-brooklyn</artifactId>
- <packaging>pom</packaging>
-
- <name>Integrations: Apache Brooklyn</name>
- <description>Integration module for integrating PLC4X into Apache Brooklyn.</description>
-
- <modules>
-
- </modules>
-
-</project>
\ No newline at end of file
diff --git a/integrations/apache-kafka/config/sink.properties b/integrations/apache-kafka/config/sink.properties
deleted file mode 100644
index ae9ccba..0000000
--- a/integrations/apache-kafka/config/sink.properties
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements. See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License. You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
--->
-name=plc-sink-test
-connector.class=org.apache.plc4x.kafka.Plc4xSinkConnector
-topics=test
-url=test:unused
-transforms=key
-transforms.key.type=org.apache.kafka.connect.transforms.ExtractField$Key
-transforms.key.field=query
\ No newline at end of file
diff --git a/integrations/apache-kafka/config/source.properties b/integrations/apache-kafka/config/source.properties
deleted file mode 100644
index afa7e93..0000000
--- a/integrations/apache-kafka/config/source.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements. See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License. You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
--->
-name=plc-source-test
-connector.class=org.apache.plc4x.kafka.Plc4xSourceConnector
-topic=test
-queries=test:unused#RANDOM/foo:INTEGER,test:another#RANDOM/bar:STRING
-rate=2000
\ No newline at end of file
diff --git a/plc4cpp/CMakeLists.txt b/plc4cpp/CMakeLists.txt
index c0fdfef..668ef96 100644
--- a/plc4cpp/CMakeLists.txt
+++ b/plc4cpp/CMakeLists.txt
@@ -29,5 +29,8 @@ set(PLC4CPP_ROOT_DIR ${CMAKE_SOURCE_DIR})
Build all the modules of PLC4Cpp
]]
add_subdirectory(api)
-add_subdirectory(protocols/driver-bases/base)
-add_subdirectory(utils/logger)
\ No newline at end of file
+add_subdirectory(protocols)
+add_subdirectory(utils)
+
+add_subdirectory(examples)
+add_subdirectory(integrations)
diff --git a/plc4cpp/CMakeLists.txt b/plc4cpp/examples/CMakeLists.txt
similarity index 71%
copy from plc4cpp/CMakeLists.txt
copy to plc4cpp/examples/CMakeLists.txt
index c0fdfef..1989a97 100644
--- a/plc4cpp/CMakeLists.txt
+++ b/plc4cpp/examples/CMakeLists.txt
@@ -17,17 +17,4 @@
under the License.
]]
-cmake_minimum_required(VERSION 3.7)
-set(CMAKE_CXX_STANDARD 11)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_EXTENSIONS OFF)
-
-set(PLC4CPP_ROOT_DIR ${CMAKE_SOURCE_DIR})
-
-
-#[[
- Build all the modules of PLC4Cpp
-]]
-add_subdirectory(api)
-add_subdirectory(protocols/driver-bases/base)
-add_subdirectory(utils/logger)
\ No newline at end of file
+//add_subdirectory(module-name)
diff --git a/plc4cpp/pom.xml b/plc4cpp/examples/pom.xml
similarity index 64%
copy from plc4cpp/pom.xml
copy to plc4cpp/examples/pom.xml
index a6bb5bc..4751b7c 100644
--- a/plc4cpp/pom.xml
+++ b/plc4cpp/examples/pom.xml
@@ -23,39 +23,33 @@
<parent>
<groupId>org.apache.plc4x</groupId>
- <artifactId>plc4x-parent</artifactId>
+ <artifactId>plc4cpp</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>plc4cpp</artifactId>
+ <groupId>org.apache.plc4x.examples</groupId>
+ <artifactId>plc4cpp-examples</artifactId>
<packaging>pom</packaging>
- <name>PLC4Cpp</name>
- <description>Implementation of the protocol adapters for usage as C++ library.</description>
+ <name>PLC4Cpp: Examples</name>
+ <description>Parent of all C++ based application example modules.</description>
<modules>
- <module>api</module>
- <module>protocols</module>
- <module>utils</module>
-
- <!-- Third party libs -->
- <module>libs</module>
</modules>
<build>
- <plugins>
- <!-- Prevent the jar plugin from building a jar -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <id>default-jar</id>
- <phase/>
- </execution>
- </executions>
- </plugin>
- </plugins>
+ <pluginManagement>
+ <plugins>
+ <!-- No need to deploy examples in a maven repo -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
</build>
</project>
\ No newline at end of file
diff --git a/plc4cpp/CMakeLists.txt b/plc4cpp/integrations/CMakeLists.txt
similarity index 71%
copy from plc4cpp/CMakeLists.txt
copy to plc4cpp/integrations/CMakeLists.txt
index c0fdfef..7086afa 100644
--- a/plc4cpp/CMakeLists.txt
+++ b/plc4cpp/integrations/CMakeLists.txt
@@ -17,17 +17,5 @@
under the License.
]]
-cmake_minimum_required(VERSION 3.7)
-set(CMAKE_CXX_STANDARD 11)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_EXTENSIONS OFF)
-
-set(PLC4CPP_ROOT_DIR ${CMAKE_SOURCE_DIR})
-
-
-#[[
- Build all the modules of PLC4Cpp
-]]
-add_subdirectory(api)
-add_subdirectory(protocols/driver-bases/base)
-add_subdirectory(utils/logger)
\ No newline at end of file
+add_subdirectory(apache-mynewt)
+add_subdirectory(edgex-foundry)
\ No newline at end of file
diff --git a/plc4cpp/CMakeLists.txt b/plc4cpp/integrations/apache-mynewt/CMakeLists.txt
similarity index 71%
copy from plc4cpp/CMakeLists.txt
copy to plc4cpp/integrations/apache-mynewt/CMakeLists.txt
index c0fdfef..1989a97 100644
--- a/plc4cpp/CMakeLists.txt
+++ b/plc4cpp/integrations/apache-mynewt/CMakeLists.txt
@@ -17,17 +17,4 @@
under the License.
]]
-cmake_minimum_required(VERSION 3.7)
-set(CMAKE_CXX_STANDARD 11)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_EXTENSIONS OFF)
-
-set(PLC4CPP_ROOT_DIR ${CMAKE_SOURCE_DIR})
-
-
-#[[
- Build all the modules of PLC4Cpp
-]]
-add_subdirectory(api)
-add_subdirectory(protocols/driver-bases/base)
-add_subdirectory(utils/logger)
\ No newline at end of file
+//add_subdirectory(module-name)
diff --git a/integrations/apache-mynewt/pom.xml b/plc4cpp/integrations/apache-mynewt/pom.xml
similarity index 89%
rename from integrations/apache-mynewt/pom.xml
rename to plc4cpp/integrations/apache-mynewt/pom.xml
index 10496f6..8773724 100644
--- a/integrations/apache-mynewt/pom.xml
+++ b/plc4cpp/integrations/apache-mynewt/pom.xml
@@ -23,14 +23,14 @@
<parent>
<groupId>org.apache.plc4x</groupId>
- <artifactId>integrations</artifactId>
+ <artifactId>plc4cpp-integrations</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>apache-mynewt</artifactId>
+ <artifactId>plc4cpp-apache-mynewt</artifactId>
<packaging>pom</packaging>
- <name>Integrations: Apache Mynewt</name>
+ <name>PLC4Cpp: Integrations: Apache Mynewt</name>
<description>Integration module for integrating PLC4X into Apache Mynewt.</description>
<modules>
diff --git a/plc4cpp/CMakeLists.txt b/plc4cpp/integrations/edgex-foundry/CMakeLists.txt
similarity index 71%
copy from plc4cpp/CMakeLists.txt
copy to plc4cpp/integrations/edgex-foundry/CMakeLists.txt
index c0fdfef..1989a97 100644
--- a/plc4cpp/CMakeLists.txt
+++ b/plc4cpp/integrations/edgex-foundry/CMakeLists.txt
@@ -17,17 +17,4 @@
under the License.
]]
-cmake_minimum_required(VERSION 3.7)
-set(CMAKE_CXX_STANDARD 11)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_EXTENSIONS OFF)
-
-set(PLC4CPP_ROOT_DIR ${CMAKE_SOURCE_DIR})
-
-
-#[[
- Build all the modules of PLC4Cpp
-]]
-add_subdirectory(api)
-add_subdirectory(protocols/driver-bases/base)
-add_subdirectory(utils/logger)
\ No newline at end of file
+//add_subdirectory(module-name)
diff --git a/integrations/apache-karaf/karaf-s7-feature/pom.xml b/plc4cpp/integrations/edgex-foundry/pom.xml
similarity index 65%
copy from integrations/apache-karaf/karaf-s7-feature/pom.xml
copy to plc4cpp/integrations/edgex-foundry/pom.xml
index 47f3ad2..b036617 100644
--- a/integrations/apache-karaf/karaf-s7-feature/pom.xml
+++ b/plc4cpp/integrations/edgex-foundry/pom.xml
@@ -8,7 +8,7 @@
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
+ http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
@@ -17,36 +17,22 @@
specific language governing permissions and limitations
under the License.
-->
-
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>apache-karaf</artifactId>
<groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4cpp-integrations</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>karaf-s7-feature</artifactId>
- <packaging>feature</packaging>
-
- <name>Integrations: Apache Karaf: S7</name>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.plc4x</groupId>
- <artifactId>plc4j-driver-s7</artifactId>
- <version>0.4.0-SNAPSHOT</version>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.karaf.tooling</groupId>
- <artifactId>karaf-maven-plugin</artifactId>
- </plugin>
- </plugins>
- </build>
+ <artifactId>plc4cpp-edgex-foundry</artifactId>
+ <packaging>pom</packaging>
+
+ <name>PLC4Cpp: Integrations: EdgeX-Foundry</name>
+
+ <modules>
+ </modules>
</project>
\ No newline at end of file
diff --git a/integrations/pom.xml b/plc4cpp/integrations/pom.xml
similarity index 78%
rename from integrations/pom.xml
rename to plc4cpp/integrations/pom.xml
index b7cc8c8..a21c84b 100644
--- a/integrations/pom.xml
+++ b/plc4cpp/integrations/pom.xml
@@ -22,25 +22,19 @@
<parent>
<groupId>org.apache.plc4x</groupId>
- <artifactId>plc4x-parent</artifactId>
+ <artifactId>plc4cpp</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>integrations</artifactId>
+ <artifactId>plc4cpp-integrations</artifactId>
<packaging>pom</packaging>
- <name>Integrations</name>
+ <name>PLC4Cpp: Integrations</name>
<description>Parent of all product specific integration modules.</description>
<modules>
- <module>apache-brooklyn</module>
- <module>apache-camel</module>
- <module>apache-edgent</module>
- <module>apache-kafka</module>
<module>apache-mynewt</module>
- <module>apache-nifi</module>
- <module>apache-karaf</module>
- <module>apache-calcite</module>
+ <module>edgex-foundry</module>
</modules>
</project>
\ No newline at end of file
diff --git a/plc4cpp/pom.xml b/plc4cpp/pom.xml
index a6bb5bc..7f6d46f 100644
--- a/plc4cpp/pom.xml
+++ b/plc4cpp/pom.xml
@@ -38,6 +38,9 @@
<module>protocols</module>
<module>utils</module>
+ <module>examples</module>
+ <module>integrations</module>
+
<!-- Third party libs -->
<module>libs</module>
</modules>
diff --git a/examples/dummy-driver/pom.xml b/plc4j/examples/dummy-driver/pom.xml
similarity index 94%
rename from examples/dummy-driver/pom.xml
rename to plc4j/examples/dummy-driver/pom.xml
index 4ace59b..5083a58 100644
--- a/examples/dummy-driver/pom.xml
+++ b/plc4j/examples/dummy-driver/pom.xml
@@ -23,12 +23,12 @@
<parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>examples</artifactId>
+ <artifactId>plc4j-examples</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>dummy-driver</artifactId>
- <name>Examples: Protocol: Dummy</name>
+ <artifactId>plc4j-dummy-driver</artifactId>
+ <name>PLC4J: Examples: Protocol: Dummy</name>
<description>
Implementation of a PLC4X driver able to speak a non existent dummy protocol.
This module should be used as inspiration for implementing own drivers.
diff --git a/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/DummyDriver.java b/plc4j/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/DummyDriver.java
similarity index 100%
rename from examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/DummyDriver.java
rename to plc4j/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/DummyDriver.java
index d9e182b..76e54f1 100644
--- a/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/DummyDriver.java
+++ b/plc4j/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/DummyDriver.java
@@ -18,11 +18,11 @@ under the License.
*/
package org.apache.plc4x.java.examples.dummydriver;
-import org.apache.plc4x.java.spi.PlcDriver;
-import org.apache.plc4x.java.api.authentication.PlcAuthentication;
import org.apache.plc4x.java.api.PlcConnection;
+import org.apache.plc4x.java.api.authentication.PlcAuthentication;
import org.apache.plc4x.java.api.exceptions.PlcConnectionException;
import org.apache.plc4x.java.examples.dummydriver.connection.DummyConnection;
+import org.apache.plc4x.java.spi.PlcDriver;
import java.net.InetAddress;
import java.net.UnknownHostException;
diff --git a/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/connection/DummyConnection.java b/plc4j/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/connection/DummyConnection.java
similarity index 100%
rename from examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/connection/DummyConnection.java
rename to plc4j/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/connection/DummyConnection.java
diff --git a/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/model/DummyField.java b/plc4j/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/model/DummyField.java
similarity index 100%
rename from examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/model/DummyField.java
rename to plc4j/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/model/DummyField.java
diff --git a/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/netty/DummyProtocol.java b/plc4j/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/netty/DummyProtocol.java
similarity index 100%
rename from examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/netty/DummyProtocol.java
rename to plc4j/examples/dummy-driver/src/main/java/org/apache/plc4x/java/examples/dummydriver/netty/DummyProtocol.java
diff --git a/examples/dummy-driver/src/main/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver b/plc4j/examples/dummy-driver/src/main/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver
similarity index 100%
rename from examples/dummy-driver/src/main/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver
rename to plc4j/examples/dummy-driver/src/main/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver
diff --git a/examples/hello-cloud-azure/pom.xml b/plc4j/examples/hello-cloud-azure/pom.xml
similarity index 94%
rename from examples/hello-cloud-azure/pom.xml
rename to plc4j/examples/hello-cloud-azure/pom.xml
index f42d164..35f8f9e 100644
--- a/examples/hello-cloud-azure/pom.xml
+++ b/plc4j/examples/hello-cloud-azure/pom.xml
@@ -21,13 +21,13 @@
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>examples</artifactId>
<groupId>org.apache.plc4x.examples</groupId>
+ <artifactId>plc4j-examples</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hello-cloud-azure</artifactId>
- <name>Examples: Cloud: Azure IoT Hub</name>
+ <artifactId>plc4j-hello-cloud-azure</artifactId>
+ <name>PLC4J: Examples: Cloud: Azure IoT Hub</name>
<description>
Implementation of a PLC4X application gathering information from
a PLC and making that available in an Azure IoT Hub.
diff --git a/examples/hello-cloud-azure/src/main/java/org/apache/plc4x/java/examples/cloud/azure/CliOptions.java b/plc4j/examples/hello-cloud-azure/src/main/java/org/apache/plc4x/java/examples/cloud/azure/CliOptions.java
similarity index 100%
rename from examples/hello-cloud-azure/src/main/java/org/apache/plc4x/java/examples/cloud/azure/CliOptions.java
rename to plc4j/examples/hello-cloud-azure/src/main/java/org/apache/plc4x/java/examples/cloud/azure/CliOptions.java
diff --git a/examples/hello-cloud-azure/src/main/java/org/apache/plc4x/java/examples/cloud/azure/S7PlcToAzureIoTHubSample.java b/plc4j/examples/hello-cloud-azure/src/main/java/org/apache/plc4x/java/examples/cloud/azure/S7PlcToAzureIoTHubSample.java
similarity index 100%
rename from examples/hello-cloud-azure/src/main/java/org/apache/plc4x/java/examples/cloud/azure/S7PlcToAzureIoTHubSample.java
rename to plc4j/examples/hello-cloud-azure/src/main/java/org/apache/plc4x/java/examples/cloud/azure/S7PlcToAzureIoTHubSample.java
diff --git a/examples/hello-cloud-google/README.md b/plc4j/examples/hello-cloud-google/README.md
similarity index 100%
rename from examples/hello-cloud-google/README.md
rename to plc4j/examples/hello-cloud-google/README.md
diff --git a/examples/hello-cloud-google/pom.xml b/plc4j/examples/hello-cloud-google/pom.xml
similarity index 95%
rename from examples/hello-cloud-google/pom.xml
rename to plc4j/examples/hello-cloud-google/pom.xml
index a64c3f0..a9ae206 100644
--- a/examples/hello-cloud-google/pom.xml
+++ b/plc4j/examples/hello-cloud-google/pom.xml
@@ -21,13 +21,13 @@
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>examples</artifactId>
<groupId>org.apache.plc4x.examples</groupId>
+ <artifactId>plc4j-examples</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hello-cloud-google</artifactId>
- <name>Examples: Cloud: Google Cloud IoT Core</name>
+ <artifactId>plc4j-hello-cloud-google</artifactId>
+ <name>PLC4J: Examples: Cloud: Google Cloud IoT Core</name>
<description>
Implementation of a PLC4X application gathering information from
a PLC and making that available in an the Google Cloud IoT Core.
diff --git a/examples/hello-cloud-google/src/main/java/org/apache/plc4x/java/examples/cloud/google/CliOptions.java b/plc4j/examples/hello-cloud-google/src/main/java/org/apache/plc4x/java/examples/cloud/google/CliOptions.java
similarity index 100%
rename from examples/hello-cloud-google/src/main/java/org/apache/plc4x/java/examples/cloud/google/CliOptions.java
rename to plc4j/examples/hello-cloud-google/src/main/java/org/apache/plc4x/java/examples/cloud/google/CliOptions.java
diff --git a/examples/hello-cloud-google/src/main/java/org/apache/plc4x/java/examples/cloud/google/S7PlcToGoogleIoTCoreSample.java b/plc4j/examples/hello-cloud-google/src/main/java/org/apache/plc4x/java/examples/cloud/google/S7PlcToGoogleIoTCoreSample.java
similarity index 100%
rename from examples/hello-cloud-google/src/main/java/org/apache/plc4x/java/examples/cloud/google/S7PlcToGoogleIoTCoreSample.java
rename to plc4j/examples/hello-cloud-google/src/main/java/org/apache/plc4x/java/examples/cloud/google/S7PlcToGoogleIoTCoreSample.java
diff --git a/examples/hello-cloud-google/src/main/resources/logback.xml b/plc4j/examples/hello-cloud-google/src/main/resources/logback.xml
similarity index 100%
rename from examples/hello-cloud-google/src/main/resources/logback.xml
rename to plc4j/examples/hello-cloud-google/src/main/resources/logback.xml
diff --git a/examples/hello-connectivity-kafka/kafka-connector.yml b/plc4j/examples/hello-connectivity-kafka/kafka-connector.yml
similarity index 100%
rename from examples/hello-connectivity-kafka/kafka-connector.yml
rename to plc4j/examples/hello-connectivity-kafka/kafka-connector.yml
diff --git a/examples/hello-connectivity-kafka/pom.xml b/plc4j/examples/hello-connectivity-kafka/pom.xml
similarity index 96%
rename from examples/hello-connectivity-kafka/pom.xml
rename to plc4j/examples/hello-connectivity-kafka/pom.xml
index a989e91..c035912 100644
--- a/examples/hello-connectivity-kafka/pom.xml
+++ b/plc4j/examples/hello-connectivity-kafka/pom.xml
@@ -23,12 +23,12 @@
<parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>examples</artifactId>
+ <artifactId>plc4j-examples</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hello-connectivity-kafka</artifactId>
- <name>Examples: Connectivity: Kafka</name>
+ <artifactId>plc4j-hello-connectivity-kafka</artifactId>
+ <name>PLC4J: Examples: Connectivity: Kafka</name>
<description>Sample application that reads data from a connected PLC and publishes this information to a Kafka topic.</description>
<properties>
diff --git a/examples/hello-connectivity-kafka/server.sh b/plc4j/examples/hello-connectivity-kafka/server.sh
similarity index 100%
rename from examples/hello-connectivity-kafka/server.sh
rename to plc4j/examples/hello-connectivity-kafka/server.sh
diff --git a/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/KafkaConnector.java b/plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/KafkaConnector.java
similarity index 100%
rename from examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/KafkaConnector.java
rename to plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/KafkaConnector.java
diff --git a/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/Configuration.java b/plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/Configuration.java
similarity index 100%
rename from examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/Configuration.java
rename to plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/Configuration.java
diff --git a/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/KafkaConfig.java b/plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/KafkaConfig.java
similarity index 100%
rename from examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/KafkaConfig.java
rename to plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/KafkaConfig.java
diff --git a/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcConfig.java b/plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcConfig.java
similarity index 100%
rename from examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcConfig.java
rename to plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcConfig.java
diff --git a/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcFieldConfig.java b/plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcFieldConfig.java
similarity index 100%
rename from examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcFieldConfig.java
rename to plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcFieldConfig.java
diff --git a/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcMemoryBlock.java b/plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcMemoryBlock.java
similarity index 100%
rename from examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcMemoryBlock.java
rename to plc4j/examples/hello-connectivity-kafka/src/main/java/org/apache/plc4x/java/examples/connectivity/kafka/model/PlcMemoryBlock.java
diff --git a/examples/hello-connectivity-mqtt/src/main/resources/logback.xml b/plc4j/examples/hello-connectivity-kafka/src/main/resources/logback.xml
similarity index 100%
rename from examples/hello-connectivity-mqtt/src/main/resources/logback.xml
rename to plc4j/examples/hello-connectivity-kafka/src/main/resources/logback.xml
diff --git a/examples/hello-connectivity-mqtt/mqtt-connector.yml b/plc4j/examples/hello-connectivity-mqtt/mqtt-connector.yml
similarity index 100%
rename from examples/hello-connectivity-mqtt/mqtt-connector.yml
rename to plc4j/examples/hello-connectivity-mqtt/mqtt-connector.yml
diff --git a/examples/hello-connectivity-mqtt/pom.xml b/plc4j/examples/hello-connectivity-mqtt/pom.xml
similarity index 96%
rename from examples/hello-connectivity-mqtt/pom.xml
rename to plc4j/examples/hello-connectivity-mqtt/pom.xml
index 799ec0f..74cdcb4 100644
--- a/examples/hello-connectivity-mqtt/pom.xml
+++ b/plc4j/examples/hello-connectivity-mqtt/pom.xml
@@ -23,12 +23,12 @@
<parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>examples</artifactId>
+ <artifactId>plc4j-examples</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hello-connectivity-mqtt</artifactId>
- <name>Examples: Connectivity: MQTT</name>
+ <artifactId>plc4j-hello-connectivity-mqtt</artifactId>
+ <name>PLC4J: Examples: Connectivity: MQTT</name>
<description>Sample application, that reads data from a connected PLC and publishes this information via MQTT.</description>
<properties>
diff --git a/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/MqttConnector.java b/plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/MqttConnector.java
similarity index 100%
rename from examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/MqttConnector.java
rename to plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/MqttConnector.java
diff --git a/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/Configuration.java b/plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/Configuration.java
similarity index 100%
rename from examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/Configuration.java
rename to plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/Configuration.java
diff --git a/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/MqttConfig.java b/plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/MqttConfig.java
similarity index 100%
rename from examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/MqttConfig.java
rename to plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/MqttConfig.java
diff --git a/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcConfig.java b/plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcConfig.java
similarity index 100%
rename from examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcConfig.java
rename to plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcConfig.java
diff --git a/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcFieldConfig.java b/plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcFieldConfig.java
similarity index 100%
rename from examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcFieldConfig.java
rename to plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcFieldConfig.java
diff --git a/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcMemoryBlock.java b/plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcMemoryBlock.java
similarity index 100%
rename from examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcMemoryBlock.java
rename to plc4j/examples/hello-connectivity-mqtt/src/main/java/org/apache/plc4x/java/examples/connectivity/mqtt/model/PlcMemoryBlock.java
diff --git a/examples/hello-connectivity-kafka/src/main/resources/logback.xml b/plc4j/examples/hello-connectivity-mqtt/src/main/resources/logback.xml
similarity index 100%
rename from examples/hello-connectivity-kafka/src/main/resources/logback.xml
rename to plc4j/examples/hello-connectivity-mqtt/src/main/resources/logback.xml
diff --git a/examples/hello-integration-edgent/pom.xml b/plc4j/examples/hello-integration-edgent/pom.xml
similarity index 95%
rename from examples/hello-integration-edgent/pom.xml
rename to plc4j/examples/hello-integration-edgent/pom.xml
index 54618e5..2aeee4c 100644
--- a/examples/hello-integration-edgent/pom.xml
+++ b/plc4j/examples/hello-integration-edgent/pom.xml
@@ -23,12 +23,12 @@
<parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>examples</artifactId>
+ <artifactId>plc4j-examples</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hellp-integration-edgent</artifactId>
- <name>Examples: Edgent</name>
+ <artifactId>plc4j-hellp-integration-edgent</artifactId>
+ <name>PLC4J: Examples: Edgent</name>
<description>Application using Edgent to output PLC data to the console.</description>
<properties>
diff --git a/examples/hello-integration-edgent/src/main/java/org/apache/plc4x/java/examples/integration/edgent/CliOptions.java b/plc4j/examples/hello-integration-edgent/src/main/java/org/apache/plc4x/java/examples/integration/edgent/CliOptions.java
similarity index 100%
rename from examples/hello-integration-edgent/src/main/java/org/apache/plc4x/java/examples/integration/edgent/CliOptions.java
rename to plc4j/examples/hello-integration-edgent/src/main/java/org/apache/plc4x/java/examples/integration/edgent/CliOptions.java
diff --git a/examples/hello-integration-edgent/src/main/java/org/apache/plc4x/java/examples/integration/edgent/PlcLogger.java b/plc4j/examples/hello-integration-edgent/src/main/java/org/apache/plc4x/java/examples/integration/edgent/PlcLogger.java
similarity index 100%
rename from examples/hello-integration-edgent/src/main/java/org/apache/plc4x/java/examples/integration/edgent/PlcLogger.java
rename to plc4j/examples/hello-integration-edgent/src/main/java/org/apache/plc4x/java/examples/integration/edgent/PlcLogger.java
diff --git a/examples/hello-world-plc4x/src/main/resources/logback.xml b/plc4j/examples/hello-integration-edgent/src/main/resources/logback.xml
similarity index 100%
rename from examples/hello-world-plc4x/src/main/resources/logback.xml
rename to plc4j/examples/hello-integration-edgent/src/main/resources/logback.xml
diff --git a/examples/hello-opm/pom.xml b/plc4j/examples/hello-opm/pom.xml
similarity index 95%
rename from examples/hello-opm/pom.xml
rename to plc4j/examples/hello-opm/pom.xml
index e477c6e..1a54c8c 100644
--- a/examples/hello-opm/pom.xml
+++ b/plc4j/examples/hello-opm/pom.xml
@@ -23,12 +23,12 @@
<parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>examples</artifactId>
+ <artifactId>plc4j-examples</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hello-opm</artifactId>
- <name>Examples: Hello OPM</name>
+ <artifactId>plc4j-hello-opm</artifactId>
+ <name>PLC4J: Examples: Hello OPM</name>
<description>Hello World example of PLC4X using the OPM feature.</description>
<properties>
diff --git a/examples/hello-opm/src/main/java/org/apache/plc4x/java/examples/helloopm/HelloOpm.java b/plc4j/examples/hello-opm/src/main/java/org/apache/plc4x/java/examples/helloopm/HelloOpm.java
similarity index 100%
rename from examples/hello-opm/src/main/java/org/apache/plc4x/java/examples/helloopm/HelloOpm.java
rename to plc4j/examples/hello-opm/src/main/java/org/apache/plc4x/java/examples/helloopm/HelloOpm.java
diff --git a/examples/hello-opm/src/main/resources/logback.xml b/plc4j/examples/hello-opm/src/main/resources/logback.xml
similarity index 100%
rename from examples/hello-opm/src/main/resources/logback.xml
rename to plc4j/examples/hello-opm/src/main/resources/logback.xml
diff --git a/examples/hello-storage-elasticsearch/README.adoc b/plc4j/examples/hello-storage-elasticsearch/README.adoc
similarity index 100%
rename from examples/hello-storage-elasticsearch/README.adoc
rename to plc4j/examples/hello-storage-elasticsearch/README.adoc
diff --git a/examples/hello-storage-elasticsearch/pom.xml b/plc4j/examples/hello-storage-elasticsearch/pom.xml
similarity index 96%
rename from examples/hello-storage-elasticsearch/pom.xml
rename to plc4j/examples/hello-storage-elasticsearch/pom.xml
index 198ea09..76ef771 100644
--- a/examples/hello-storage-elasticsearch/pom.xml
+++ b/plc4j/examples/hello-storage-elasticsearch/pom.xml
@@ -23,12 +23,12 @@
<parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>examples</artifactId>
+ <artifactId>plc4j-examples</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hello-elasticsearch</artifactId>
- <name>Examples: Storage: ElasticSearch</name>
+ <artifactId>plc4j-hello-elasticsearch</artifactId>
+ <name>PLC4J: Examples: Storage: ElasticSearch</name>
<description>Client application demonstrating PLC4X in our virtual IoT Factory using ElasticSearch.</description>
<properties>
diff --git a/examples/hello-storage-elasticsearch/src/main/java/org/apache/plc4x/java/examples/storage/elasticsearch/ElasticsearchStorage.java b/plc4j/examples/hello-storage-elasticsearch/src/main/java/org/apache/plc4x/java/examples/storage/elasticsearch/ElasticsearchStorage.java
similarity index 100%
rename from examples/hello-storage-elasticsearch/src/main/java/org/apache/plc4x/java/examples/storage/elasticsearch/ElasticsearchStorage.java
rename to plc4j/examples/hello-storage-elasticsearch/src/main/java/org/apache/plc4x/java/examples/storage/elasticsearch/ElasticsearchStorage.java
diff --git a/examples/hello-storage-elasticsearch/src/main/resources/log4j2.xml b/plc4j/examples/hello-storage-elasticsearch/src/main/resources/log4j2.xml
similarity index 100%
rename from examples/hello-storage-elasticsearch/src/main/resources/log4j2.xml
rename to plc4j/examples/hello-storage-elasticsearch/src/main/resources/log4j2.xml
diff --git a/examples/hello-storage-elasticsearch/src/main/resources/logback.xml b/plc4j/examples/hello-storage-elasticsearch/src/main/resources/logback.xml
similarity index 100%
rename from examples/hello-storage-elasticsearch/src/main/resources/logback.xml
rename to plc4j/examples/hello-storage-elasticsearch/src/main/resources/logback.xml
diff --git a/examples/hello-webapp/client/pom.xml b/plc4j/examples/hello-webapp/client/pom.xml
similarity index 86%
rename from examples/hello-webapp/client/pom.xml
rename to plc4j/examples/hello-webapp/client/pom.xml
index 90a5abc..e78c910 100644
--- a/examples/hello-webapp/client/pom.xml
+++ b/plc4j/examples/hello-webapp/client/pom.xml
@@ -22,14 +22,14 @@
<parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>hello-webapp</artifactId>
+ <artifactId>plc4j-hello-webapp</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hello-webapp-client</artifactId>
+ <artifactId>plc4j-hello-webapp-client</artifactId>
<packaging>swf</packaging>
- <name>Examples: Hello-Webapp: Client</name>
+ <name>PLC4J: Examples: Hello-Webapp: Client</name>
<build>
<sourceDirectory>src/main/royale</sourceDirectory>
@@ -60,6 +60,17 @@
</dependency>
</dependencies>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <configuration>
+ <usedDependencies>
+ <usedDependency>org.apache.royale.framework:Jewel</usedDependency>
+ <usedDependency>org.apache.royale.framework:Language</usedDependency>
+ <usedDependency>org.apache.royale.framework:Network</usedDependency>
+ </usedDependencies>
+ </configuration>
+ </plugin>
</plugins>
</build>
diff --git a/examples/hello-webapp/client/src/main/royale/HelloPLC4X.mxml b/plc4j/examples/hello-webapp/client/src/main/royale/HelloPLC4X.mxml
similarity index 97%
rename from examples/hello-webapp/client/src/main/royale/HelloPLC4X.mxml
rename to plc4j/examples/hello-webapp/client/src/main/royale/HelloPLC4X.mxml
index c78bb06..b01a9b2 100644
--- a/examples/hello-webapp/client/src/main/royale/HelloPLC4X.mxml
+++ b/plc4j/examples/hello-webapp/client/src/main/royale/HelloPLC4X.mxml
@@ -30,9 +30,6 @@
<fx:Script>
<![CDATA[
- import org.apache.royale.events.Event;
- import org.apache.royale.events.MouseEvent;
-
public function move(event:MouseEvent):void {
if (event.target == moveForwardLeftButton) {
robotService.moveForwardLeft();
diff --git a/examples/hello-webapp/client/src/main/royale/service/RobotService.as b/plc4j/examples/hello-webapp/client/src/main/royale/service/RobotService.as
similarity index 93%
rename from examples/hello-webapp/client/src/main/royale/service/RobotService.as
rename to plc4j/examples/hello-webapp/client/src/main/royale/service/RobotService.as
index 2dd3772..026e318 100644
--- a/examples/hello-webapp/client/src/main/royale/service/RobotService.as
+++ b/plc4j/examples/hello-webapp/client/src/main/royale/service/RobotService.as
@@ -19,11 +19,6 @@
package service
{
-import org.apache.royale.events.Event;
-import org.apache.royale.events.EventDispatcher;
-import org.apache.royale.net.HTTPConstants;
-import org.apache.royale.net.HTTPService;
-
[Event(name="success", type="org.apache.royale.events.Event")]
public class RobotService extends EventDispatcher {
diff --git a/examples/hello-webapp/pom.xml b/plc4j/examples/hello-webapp/pom.xml
similarity index 94%
rename from examples/hello-webapp/pom.xml
rename to plc4j/examples/hello-webapp/pom.xml
index 581732f..65f8633 100644
--- a/examples/hello-webapp/pom.xml
+++ b/plc4j/examples/hello-webapp/pom.xml
@@ -23,12 +23,12 @@
<parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>examples</artifactId>
+ <artifactId>plc4j-examples</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hello-webapp</artifactId>
- <name>Examples: Hello-Webapp (root)</name>
+ <artifactId>plc4j-hello-webapp</artifactId>
+ <name>PLC4J: Examples: Hello-Webapp (root)</name>
<packaging>pom</packaging>
<properties>
diff --git a/examples/hello-webapp/service/pom.xml b/plc4j/examples/hello-webapp/service/pom.xml
similarity index 93%
rename from examples/hello-webapp/service/pom.xml
rename to plc4j/examples/hello-webapp/service/pom.xml
index e933162..506598f 100644
--- a/examples/hello-webapp/service/pom.xml
+++ b/plc4j/examples/hello-webapp/service/pom.xml
@@ -24,13 +24,13 @@
<parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>hello-webapp</artifactId>
+ <artifactId>plc4j-hello-webapp</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hello-webapp-service</artifactId>
+ <artifactId>plc4j-hello-webapp-service</artifactId>
- <name>Examples: Hello-Webapp: Service</name>
+ <name>PLC4J: Examples: Hello-Webapp: Service</name>
<build>
<plugins>
diff --git a/examples/hello-webapp/service/src/main/java/org/apache/plc4x/examples/robot/controllers/RobotController.java b/plc4j/examples/hello-webapp/service/src/main/java/org/apache/plc4x/examples/robot/controllers/RobotController.java
similarity index 100%
rename from examples/hello-webapp/service/src/main/java/org/apache/plc4x/examples/robot/controllers/RobotController.java
rename to plc4j/examples/hello-webapp/service/src/main/java/org/apache/plc4x/examples/robot/controllers/RobotController.java
diff --git a/examples/hello-webapp/webapp/pom.xml b/plc4j/examples/hello-webapp/webapp/pom.xml
similarity index 88%
rename from examples/hello-webapp/webapp/pom.xml
rename to plc4j/examples/hello-webapp/webapp/pom.xml
index 3f51385..fb1e8e8 100644
--- a/examples/hello-webapp/webapp/pom.xml
+++ b/plc4j/examples/hello-webapp/webapp/pom.xml
@@ -24,14 +24,14 @@
<parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>hello-webapp</artifactId>
+ <artifactId>plc4j-hello-webapp</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hello-webapp-webapp</artifactId>
+ <artifactId>plc4j-hello-webapp-webapp</artifactId>
<packaging>war</packaging>
- <name>Examples: Hello-Webapp: Spring-Boot WAR</name>
+ <name>PLC4J: Examples: Hello-Webapp: Spring-Boot WAR</name>
<properties>
<start.class>org.apache.plc4x.examples.robot.Application</start.class>
@@ -71,7 +71,7 @@
<artifactItems>
<artifactItem>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>hello-webapp-client</artifactId>
+ <artifactId>plc4j-hello-webapp-client</artifactId>
<version>0.4.0-SNAPSHOT</version>
<type>war</type>
<outputDirectory>${project.build.outputDirectory}/static/</outputDirectory>
@@ -83,8 +83,8 @@
<configuration>
<usedDependencies>
<usedDependency>org.springframework.boot:spring-boot-starter-web</usedDependency>
- <usedDependency>org.apache.plc4x.examples:hello-webapp-service</usedDependency>
- <usedDependency>org.apache.plc4x.examples:hello-webapp-client</usedDependency>
+ <usedDependency>org.apache.plc4x.examples:plc4j-hello-webapp-service</usedDependency>
+ <usedDependency>org.apache.plc4x.examples:plc4j-hello-webapp-client</usedDependency>
</usedDependencies>
</configuration>
</plugin>
@@ -106,7 +106,7 @@
<dependencies>
<dependency>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>hello-webapp-service</artifactId>
+ <artifactId>plc4j-hello-webapp-service</artifactId>
<version>0.4.0-SNAPSHOT</version>
</dependency>
@@ -130,7 +130,7 @@
<dependency>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>hello-webapp-client</artifactId>
+ <artifactId>plc4j-hello-webapp-client</artifactId>
<version>0.4.0-SNAPSHOT</version>
<type>war</type>
<scope>runtime</scope>
diff --git a/examples/hello-webapp/webapp/src/main/java/org/apache/plc4x/examples/robot/Application.java b/plc4j/examples/hello-webapp/webapp/src/main/java/org/apache/plc4x/examples/robot/Application.java
similarity index 100%
rename from examples/hello-webapp/webapp/src/main/java/org/apache/plc4x/examples/robot/Application.java
rename to plc4j/examples/hello-webapp/webapp/src/main/java/org/apache/plc4x/examples/robot/Application.java
diff --git a/examples/hello-webapp/webapp/src/main/resources/application.properties b/plc4j/examples/hello-webapp/webapp/src/main/resources/application.properties
similarity index 100%
rename from examples/hello-webapp/webapp/src/main/resources/application.properties
rename to plc4j/examples/hello-webapp/webapp/src/main/resources/application.properties
diff --git a/examples/hello-world-plc4x/pom.xml b/plc4j/examples/hello-world-plc4x/pom.xml
similarity index 95%
rename from examples/hello-world-plc4x/pom.xml
rename to plc4j/examples/hello-world-plc4x/pom.xml
index fbd1b74..e327713 100644
--- a/examples/hello-world-plc4x/pom.xml
+++ b/plc4j/examples/hello-world-plc4x/pom.xml
@@ -23,12 +23,12 @@
<parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>examples</artifactId>
+ <artifactId>plc4j-examples</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>hello-world-plc4x</artifactId>
- <name>Examples: Hello-World PLC4X</name>
+ <artifactId>plc4j-hello-world-plc4x</artifactId>
+ <name>PLC4J: Examples: Hello-World PLC4X</name>
<description>Hello world application for PLC4X.</description>
<properties>
diff --git a/examples/hello-world-plc4x/src/main/java/org/apache/plc4x/java/examples/helloplc4x/CliOptions.java b/plc4j/examples/hello-world-plc4x/src/main/java/org/apache/plc4x/java/examples/helloplc4x/CliOptions.java
similarity index 100%
rename from examples/hello-world-plc4x/src/main/java/org/apache/plc4x/java/examples/helloplc4x/CliOptions.java
rename to plc4j/examples/hello-world-plc4x/src/main/java/org/apache/plc4x/java/examples/helloplc4x/CliOptions.java
diff --git a/examples/hello-world-plc4x/src/main/java/org/apache/plc4x/java/examples/helloplc4x/HelloPlc4x.java b/plc4j/examples/hello-world-plc4x/src/main/java/org/apache/plc4x/java/examples/helloplc4x/HelloPlc4x.java
similarity index 100%
rename from examples/hello-world-plc4x/src/main/java/org/apache/plc4x/java/examples/helloplc4x/HelloPlc4x.java
rename to plc4j/examples/hello-world-plc4x/src/main/java/org/apache/plc4x/java/examples/helloplc4x/HelloPlc4x.java
diff --git a/examples/hello-integration-edgent/src/main/resources/logback.xml b/plc4j/examples/hello-world-plc4x/src/main/resources/logback.xml
similarity index 100%
rename from examples/hello-integration-edgent/src/main/resources/logback.xml
rename to plc4j/examples/hello-world-plc4x/src/main/resources/logback.xml
diff --git a/examples/pom.xml b/plc4j/examples/pom.xml
similarity index 80%
rename from examples/pom.xml
rename to plc4j/examples/pom.xml
index 8f1edf7..21fc77c 100644
--- a/examples/pom.xml
+++ b/plc4j/examples/pom.xml
@@ -1,38 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
--->
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.plc4x</groupId>
- <artifactId>plc4x-parent</artifactId>
+ <artifactId>plc4j</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
<groupId>org.apache.plc4x.examples</groupId>
- <artifactId>examples</artifactId>
+ <artifactId>plc4j-examples</artifactId>
<packaging>pom</packaging>
- <name>Examples</name>
- <description>Parent of all application example modules.</description>
+ <name>PLC4J: Examples</name>
+ <description>Parent of all java based application example modules.</description>
<modules>
<module>dummy-driver</module>
diff --git a/integrations/apache-calcite/pom.xml b/plc4j/integrations/apache-calcite/pom.xml
similarity index 95%
rename from integrations/apache-calcite/pom.xml
rename to plc4j/integrations/apache-calcite/pom.xml
index f0f4312..e54bfe8 100644
--- a/integrations/apache-calcite/pom.xml
+++ b/plc4j/integrations/apache-calcite/pom.xml
@@ -20,15 +20,15 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
- <artifactId>integrations</artifactId>
<groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-integrations</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
- <artifactId>apache-calcite</artifactId>
+ <artifactId>plc4j-apache-calcite</artifactId>
- <name>Integrations: Apache Calcite</name>
+ <name>PLC4J: Integrations: Apache Calcite</name>
<properties>
<calcite-core.version>1.17.0</calcite-core.version>
diff --git a/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xBaseTable.java b/plc4j/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xBaseTable.java
similarity index 100%
rename from integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xBaseTable.java
rename to plc4j/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xBaseTable.java
diff --git a/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xSchema.java b/plc4j/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xSchema.java
similarity index 100%
rename from integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xSchema.java
rename to plc4j/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xSchema.java
diff --git a/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xSchemaFactory.java b/plc4j/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xSchemaFactory.java
similarity index 100%
rename from integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xSchemaFactory.java
rename to plc4j/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xSchemaFactory.java
diff --git a/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xStreamTable.java b/plc4j/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xStreamTable.java
similarity index 100%
rename from integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xStreamTable.java
rename to plc4j/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xStreamTable.java
diff --git a/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xTable.java b/plc4j/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xTable.java
similarity index 100%
rename from integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xTable.java
rename to plc4j/integrations/apache-calcite/src/main/java/org/apache/plc4x/Plc4xTable.java
diff --git a/integrations/apache-calcite/src/test/java/org/apache/plc4x/DriverManagerTest.java b/plc4j/integrations/apache-calcite/src/test/java/org/apache/plc4x/DriverManagerTest.java
similarity index 100%
rename from integrations/apache-calcite/src/test/java/org/apache/plc4x/DriverManagerTest.java
rename to plc4j/integrations/apache-calcite/src/test/java/org/apache/plc4x/DriverManagerTest.java
diff --git a/integrations/apache-calcite/src/test/java/org/apache/plc4x/Plc4XBaseTableTest.java b/plc4j/integrations/apache-calcite/src/test/java/org/apache/plc4x/Plc4XBaseTableTest.java
similarity index 100%
rename from integrations/apache-calcite/src/test/java/org/apache/plc4x/Plc4XBaseTableTest.java
rename to plc4j/integrations/apache-calcite/src/test/java/org/apache/plc4x/Plc4XBaseTableTest.java
diff --git a/integrations/apache-calcite/src/test/java/org/apache/plc4x/Plc4xSchemaFactoryTest.java b/plc4j/integrations/apache-calcite/src/test/java/org/apache/plc4x/Plc4xSchemaFactoryTest.java
similarity index 96%
rename from integrations/apache-calcite/src/test/java/org/apache/plc4x/Plc4xSchemaFactoryTest.java
rename to plc4j/integrations/apache-calcite/src/test/java/org/apache/plc4x/Plc4xSchemaFactoryTest.java
index 2edc905..a70eac7 100644
--- a/integrations/apache-calcite/src/test/java/org/apache/plc4x/Plc4xSchemaFactoryTest.java
+++ b/plc4j/integrations/apache-calcite/src/test/java/org/apache/plc4x/Plc4xSchemaFactoryTest.java
@@ -23,8 +23,6 @@ import org.junit.jupiter.api.Test;
import java.util.Collections;
-import static org.junit.jupiter.api.Assertions.*;
-
class Plc4xSchemaFactoryTest implements WithAssertions {
@Test
diff --git a/integrations/apache-calcite/src/test/resources/example.yml b/plc4j/integrations/apache-calcite/src/test/resources/example.yml
similarity index 100%
rename from integrations/apache-calcite/src/test/resources/example.yml
rename to plc4j/integrations/apache-calcite/src/test/resources/example.yml
diff --git a/integrations/apache-camel/src/test/resources/logback.xml b/plc4j/integrations/apache-calcite/src/test/resources/logback.xml
similarity index 100%
rename from integrations/apache-camel/src/test/resources/logback.xml
rename to plc4j/integrations/apache-calcite/src/test/resources/logback.xml
diff --git a/integrations/apache-calcite/src/test/resources/model.json b/plc4j/integrations/apache-calcite/src/test/resources/model.json
similarity index 100%
rename from integrations/apache-calcite/src/test/resources/model.json
rename to plc4j/integrations/apache-calcite/src/test/resources/model.json
diff --git a/integrations/apache-camel/pom.xml b/plc4j/integrations/apache-camel/pom.xml
similarity index 97%
rename from integrations/apache-camel/pom.xml
rename to plc4j/integrations/apache-camel/pom.xml
index 463d7ef..bd9da84 100644
--- a/integrations/apache-camel/pom.xml
+++ b/plc4j/integrations/apache-camel/pom.xml
@@ -23,12 +23,13 @@
<parent>
<groupId>org.apache.plc4x</groupId>
- <artifactId>integrations</artifactId>
+ <artifactId>plc4j-integrations</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>apache-camel</artifactId>
- <name>Integrations: Apache Camel</name>
+ <artifactId>plc4j-apache-camel</artifactId>
+
+ <name>PLC4J: Integrations: Apache Camel</name>
<description>Integration module for integrating PLC4X into Apache Camel.</description>
<properties>
diff --git a/integrations/apache-camel/src/main/docs/PLC4X.adoc b/plc4j/integrations/apache-camel/src/main/docs/PLC4X.adoc
similarity index 100%
rename from integrations/apache-camel/src/main/docs/PLC4X.adoc
rename to plc4j/integrations/apache-camel/src/main/docs/PLC4X.adoc
diff --git a/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Constants.java b/plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Constants.java
similarity index 100%
rename from integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Constants.java
rename to plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Constants.java
diff --git a/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XComponent.java b/plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XComponent.java
similarity index 100%
rename from integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XComponent.java
rename to plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XComponent.java
diff --git a/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XConsumer.java b/plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XConsumer.java
similarity index 100%
rename from integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XConsumer.java
rename to plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XConsumer.java
diff --git a/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XEndpoint.java b/plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XEndpoint.java
similarity index 100%
rename from integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XEndpoint.java
rename to plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XEndpoint.java
diff --git a/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XPollingConsumer.java b/plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XPollingConsumer.java
similarity index 100%
rename from integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XPollingConsumer.java
rename to plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XPollingConsumer.java
diff --git a/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XProducer.java b/plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XProducer.java
similarity index 100%
rename from integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XProducer.java
rename to plc4j/integrations/apache-camel/src/main/java/org/apache/plc4x/camel/Plc4XProducer.java
diff --git a/integrations/apache-camel/src/main/resources/META-INF/services/org/apache/camel/component/plc4x b/plc4j/integrations/apache-camel/src/main/resources/META-INF/services/org/apache/camel/component/plc4x
similarity index 100%
rename from integrations/apache-camel/src/main/resources/META-INF/services/org/apache/camel/component/plc4x
rename to plc4j/integrations/apache-camel/src/main/resources/META-INF/services/org/apache/camel/component/plc4x
diff --git a/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ConstantsTest.java b/plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ConstantsTest.java
similarity index 100%
rename from integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ConstantsTest.java
rename to plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ConstantsTest.java
diff --git a/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ManualTest.java b/plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ManualTest.java
similarity index 100%
rename from integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ManualTest.java
rename to plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/ManualTest.java
diff --git a/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/MockDriver.java b/plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/MockDriver.java
similarity index 100%
rename from integrations/apache-camel/src/test/java/org/apache/plc4x/camel/MockDriver.java
rename to plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/MockDriver.java
diff --git a/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XComponentTest.java b/plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XComponentTest.java
similarity index 100%
rename from integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XComponentTest.java
rename to plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XComponentTest.java
diff --git a/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XConsumerTest.java b/plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XConsumerTest.java
similarity index 100%
rename from integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XConsumerTest.java
rename to plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XConsumerTest.java
diff --git a/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XEndpointTest.java b/plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XEndpointTest.java
similarity index 100%
rename from integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XEndpointTest.java
rename to plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XEndpointTest.java
diff --git a/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XPollingConsumerTest.java b/plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XPollingConsumerTest.java
similarity index 100%
rename from integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XPollingConsumerTest.java
rename to plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XPollingConsumerTest.java
diff --git a/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XProducerTest.java b/plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XProducerTest.java
similarity index 100%
rename from integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XProducerTest.java
rename to plc4j/integrations/apache-camel/src/test/java/org/apache/plc4x/camel/Plc4XProducerTest.java
diff --git a/integrations/apache-camel/src/test/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver b/plc4j/integrations/apache-camel/src/test/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver
similarity index 100%
rename from integrations/apache-camel/src/test/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver
rename to plc4j/integrations/apache-camel/src/test/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver
diff --git a/integrations/apache-camel/src/test/resources/log4j2.properties b/plc4j/integrations/apache-camel/src/test/resources/log4j2.properties
similarity index 100%
rename from integrations/apache-camel/src/test/resources/log4j2.properties
rename to plc4j/integrations/apache-camel/src/test/resources/log4j2.properties
diff --git a/integrations/apache-calcite/src/test/resources/logback.xml b/plc4j/integrations/apache-camel/src/test/resources/logback.xml
similarity index 100%
rename from integrations/apache-calcite/src/test/resources/logback.xml
rename to plc4j/integrations/apache-camel/src/test/resources/logback.xml
diff --git a/integrations/apache-edgent/pom.xml b/plc4j/integrations/apache-edgent/pom.xml
similarity index 94%
rename from integrations/apache-edgent/pom.xml
rename to plc4j/integrations/apache-edgent/pom.xml
index 936b546..bf985fe 100644
--- a/integrations/apache-edgent/pom.xml
+++ b/plc4j/integrations/apache-edgent/pom.xml
@@ -23,12 +23,13 @@
<parent>
<groupId>org.apache.plc4x</groupId>
- <artifactId>integrations</artifactId>
+ <artifactId>plc4j-integrations</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>apache-edgent</artifactId>
- <name>Integrations: Apache Edgent</name>
+ <artifactId>plc4j-apache-edgent</artifactId>
+
+ <name>PLC4J: Integrations: Apache Edgent</name>
<description>Integration module for integrating PLC4X into Apache Edgent.</description>
<properties>
diff --git a/integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/PlcConnectionAdapter.java b/plc4j/integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/PlcConnectionAdapter.java
similarity index 100%
rename from integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/PlcConnectionAdapter.java
rename to plc4j/integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/PlcConnectionAdapter.java
diff --git a/integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/PlcFunctions.java b/plc4j/integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/PlcFunctions.java
similarity index 100%
rename from integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/PlcFunctions.java
rename to plc4j/integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/PlcFunctions.java
diff --git a/integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/package-info.java b/plc4j/integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/package-info.java
similarity index 100%
rename from integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/package-info.java
rename to plc4j/integrations/apache-edgent/src/main/java/org/apache/plc4x/edgent/package-info.java
diff --git a/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/PlcConnectionAdapterTest.java b/plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/PlcConnectionAdapterTest.java
similarity index 100%
rename from integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/PlcConnectionAdapterTest.java
rename to plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/PlcConnectionAdapterTest.java
diff --git a/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/PlcFunctionsTest.java b/plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/PlcFunctionsTest.java
similarity index 100%
rename from integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/PlcFunctionsTest.java
rename to plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/PlcFunctionsTest.java
diff --git a/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockConnection.java b/plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockConnection.java
similarity index 100%
rename from integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockConnection.java
rename to plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockConnection.java
diff --git a/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockDriver.java b/plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockDriver.java
similarity index 100%
rename from integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockDriver.java
rename to plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockDriver.java
index 887ce2e..0a13907 100644
--- a/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockDriver.java
+++ b/plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockDriver.java
@@ -18,10 +18,10 @@ under the License.
*/
package org.apache.plc4x.edgent.mock;
-import org.apache.plc4x.java.spi.PlcDriver;
-import org.apache.plc4x.java.api.authentication.PlcAuthentication;
import org.apache.plc4x.java.api.PlcConnection;
+import org.apache.plc4x.java.api.authentication.PlcAuthentication;
import org.apache.plc4x.java.api.exceptions.PlcConnectionException;
+import org.apache.plc4x.java.spi.PlcDriver;
public class MockDriver implements PlcDriver {
diff --git a/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockField.java b/plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockField.java
similarity index 100%
rename from integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockField.java
rename to plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockField.java
diff --git a/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockFieldHandler.java b/plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockFieldHandler.java
similarity index 100%
rename from integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockFieldHandler.java
rename to plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockFieldHandler.java
diff --git a/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockFieldItem.java b/plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockFieldItem.java
similarity index 100%
rename from integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockFieldItem.java
rename to plc4j/integrations/apache-edgent/src/test/java/org/apache/plc4x/edgent/mock/MockFieldItem.java
diff --git a/integrations/apache-edgent/src/test/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver b/plc4j/integrations/apache-edgent/src/test/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver
similarity index 100%
rename from integrations/apache-edgent/src/test/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver
rename to plc4j/integrations/apache-edgent/src/test/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver
diff --git a/integrations/apache-kafka/README.md b/plc4j/integrations/apache-kafka/README.md
similarity index 100%
rename from integrations/apache-kafka/README.md
rename to plc4j/integrations/apache-kafka/README.md
diff --git a/plc4j/integrations/apache-kafka/config/sink.properties b/plc4j/integrations/apache-kafka/config/sink.properties
new file mode 100644
index 0000000..cf688b3
--- /dev/null
+++ b/plc4j/integrations/apache-kafka/config/sink.properties
@@ -0,0 +1,25 @@
+<!--=
+
+Licensed=to the Apache Software Foundation (ASF) under one or more
+contributor=license agreements. See the NOTICE file distributed with
+this=work for additional information regarding copyright ownership.
+The=ASF licenses this file to You under the Apache License, Version 2.0
+(the="License"); you may not use this file except in compliance with
+the=License. You may obtain a copy of the License at
+
+http=//www.apache.org/licenses/LICENSE-2.0
+
+Unless=required by applicable law or agreed to in writing, software
+distributed=under the License is distributed on an "AS IS" BASIS,
+WITHOUT=WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See=the License for the specific language governing permissions and
+limitations=under the License.
+
+-->=
+name=plc-sink-test
+connector.class=org.apache.plc4x.kafka.Plc4xSinkConnector
+topics=test
+url=test:unused
+transforms=key
+transforms.key.type=org.apache.kafka.connect.transforms.ExtractField$Key
+transforms.key.field=query
\ No newline at end of file
diff --git a/plc4j/integrations/apache-kafka/config/source.properties b/plc4j/integrations/apache-kafka/config/source.properties
new file mode 100644
index 0000000..76a289e
--- /dev/null
+++ b/plc4j/integrations/apache-kafka/config/source.properties
@@ -0,0 +1,23 @@
+<!--=
+
+Licensed=to the Apache Software Foundation (ASF) under one or more
+contributor=license agreements. See the NOTICE file distributed with
+this=work for additional information regarding copyright ownership.
+The=ASF licenses this file to You under the Apache License, Version 2.0
+(the="License"); you may not use this file except in compliance with
+the=License. You may obtain a copy of the License at
+
+http=//www.apache.org/licenses/LICENSE-2.0
+
+Unless=required by applicable law or agreed to in writing, software
+distributed=under the License is distributed on an "AS IS" BASIS,
+WITHOUT=WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See=the License for the specific language governing permissions and
+limitations=under the License.
+
+-->=
+name=plc-source-test
+connector.class=org.apache.plc4x.kafka.Plc4xSourceConnector
+topic=test
+queries=test:unused#RANDOM/foo:INTEGER,test:another#RANDOM/bar:STRING
+rate=2000
\ No newline at end of file
diff --git a/integrations/apache-kafka/pom.xml b/plc4j/integrations/apache-kafka/pom.xml
similarity index 94%
rename from integrations/apache-kafka/pom.xml
rename to plc4j/integrations/apache-kafka/pom.xml
index b9b3eea..32c6d5c 100644
--- a/integrations/apache-kafka/pom.xml
+++ b/plc4j/integrations/apache-kafka/pom.xml
@@ -22,12 +22,13 @@
<parent>
<groupId>org.apache.plc4x</groupId>
- <artifactId>integrations</artifactId>
+ <artifactId>plc4j-integrations</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>apache-kafka</artifactId>
- <name>Integrations: Apache Kafka</name>
+ <artifactId>plc4j-apache-kafka</artifactId>
+
+ <name>PLC4J: Integrations: Apache Kafka</name>
<description>Integration module for integrating PLC4X into Apache Kafka (Kafka-Connect-Plugin)</description>
<properties>
diff --git a/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkConnector.java b/plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkConnector.java
similarity index 95%
rename from integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkConnector.java
rename to plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkConnector.java
index fa2e32d..c68a1a8 100644
--- a/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkConnector.java
+++ b/plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkConnector.java
@@ -24,7 +24,10 @@ import org.apache.kafka.connect.connector.Task;
import org.apache.kafka.connect.sink.SinkConnector;
import org.apache.plc4x.kafka.util.VersionUtil;
-import java.util.*;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
public class Plc4xSinkConnector extends SinkConnector {
static final String URL_CONFIG = "url";
diff --git a/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkTask.java b/plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkTask.java
similarity index 100%
rename from integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkTask.java
rename to plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkTask.java
diff --git a/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceConnector.java b/plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceConnector.java
similarity index 98%
rename from integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceConnector.java
rename to plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceConnector.java
index 4be1842..40140de 100644
--- a/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceConnector.java
+++ b/plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceConnector.java
@@ -30,6 +30,7 @@ import org.slf4j.LoggerFactory;
import java.io.IOException;
import java.net.URL;
+import java.nio.charset.StandardCharsets;
import java.util.*;
import java.util.stream.Collectors;
@@ -91,7 +92,7 @@ public class Plc4xSourceConnector extends SourceConnector {
} else {
try {
// TODO
- String config = new Scanner(new URL(json).openStream(), "UTF-8").useDelimiter("\\A").next();
+ String config = new Scanner(new URL(json).openStream(), StandardCharsets.UTF_8).useDelimiter("\\A").next();
ObjectMapper mapper = new ObjectMapper();
Map<String, Object> values = mapper.readValue(config, new TypeReference<Map<String, Object>>() {});
List<Map<String, Object>> plcs = (List<Map<String, Object>>) values.get("PLCs");
diff --git a/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceTask.java b/plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceTask.java
similarity index 100%
rename from integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceTask.java
rename to plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceTask.java
diff --git a/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/util/VersionUtil.java b/plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/util/VersionUtil.java
similarity index 100%
rename from integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/util/VersionUtil.java
rename to plc4j/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/util/VersionUtil.java
diff --git a/integrations/apache-karaf/karaf-ads-feature/pom.xml b/plc4j/integrations/apache-karaf/karaf-ads-feature/pom.xml
similarity index 76%
rename from integrations/apache-karaf/karaf-ads-feature/pom.xml
rename to plc4j/integrations/apache-karaf/karaf-ads-feature/pom.xml
index fc75b12..a01d68d 100644
--- a/integrations/apache-karaf/karaf-ads-feature/pom.xml
+++ b/plc4j/integrations/apache-karaf/karaf-ads-feature/pom.xml
@@ -22,15 +22,15 @@
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>apache-karaf</artifactId>
<groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-apache-karaf</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>karaf-ads-feature</artifactId>
+ <artifactId>plc4j-karaf-ads-feature</artifactId>
<packaging>feature</packaging>
- <name>Integrations: Apache Karaf: ADS</name>
+ <name>PLC4J: Integrations: Apache Karaf: ADS</name>
<dependencies>
<dependency>
@@ -46,6 +46,15 @@
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <configuration>
+ <usedDependencies>
+ <usedDependency>org.apache.plc4x:plc4j-driver-ads</usedDependency>
+ </usedDependencies>
+ </configuration>
+ </plugin>
</plugins>
</build>
diff --git a/integrations/apache-karaf/karaf-demo-server/pom.xml b/plc4j/integrations/apache-karaf/karaf-demo-server/pom.xml
similarity index 73%
rename from integrations/apache-karaf/karaf-demo-server/pom.xml
rename to plc4j/integrations/apache-karaf/karaf-demo-server/pom.xml
index 33992f0..d6e3d31 100644
--- a/integrations/apache-karaf/karaf-demo-server/pom.xml
+++ b/plc4j/integrations/apache-karaf/karaf-demo-server/pom.xml
@@ -23,15 +23,15 @@
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>apache-karaf</artifactId>
<groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-apache-karaf</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>karaf-demo-server</artifactId>
+ <artifactId>plc4j-karaf-demo-server</artifactId>
<packaging>karaf-assembly</packaging>
- <name>Integrations: Apache Karaf: Demo Server</name>
+ <name>PLC4J: Integrations: Apache Karaf: Demo Server</name>
<dependencies>
<dependency>
@@ -83,6 +83,13 @@
<classifier>features</classifier>
<type>xml</type>
</dependency>
+
+ <!-- This is just a way of removing this dependency -->
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <scope>test</scope>
+ </dependency>
</dependencies>
<build>
@@ -99,6 +106,21 @@
</bootFeatures>
</configuration>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <configuration>
+ <usedDependencies>
+ <usedDependency>org.apache.karaf.features:framework</usedDependency>
+ <usedDependency>org.apache.karaf.features:standard</usedDependency>
+ <usedDependency>org.apache.plc4x:karaf-ads-feature</usedDependency>
+ <usedDependency>org.apache.plc4x:karaf-ethernet-ip-feature</usedDependency>
+ <usedDependency>org.apache.plc4x:karaf-modbus-feature</usedDependency>
+ <usedDependency>org.apache.plc4x:karaf-s7-feature</usedDependency>
+ <usedDependency>org.apache.plc4x:karaf-simulated-feature</usedDependency>
+ </usedDependencies>
+ </configuration>
+ </plugin>
</plugins>
</build>
diff --git a/integrations/apache-karaf/karaf-ethernet-ip-feature/pom.xml b/plc4j/integrations/apache-karaf/karaf-ethernet-ip-feature/pom.xml
similarity index 75%
rename from integrations/apache-karaf/karaf-ethernet-ip-feature/pom.xml
rename to plc4j/integrations/apache-karaf/karaf-ethernet-ip-feature/pom.xml
index b832395..b5b9584 100644
--- a/integrations/apache-karaf/karaf-ethernet-ip-feature/pom.xml
+++ b/plc4j/integrations/apache-karaf/karaf-ethernet-ip-feature/pom.xml
@@ -22,15 +22,15 @@
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>apache-karaf</artifactId>
<groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-apache-karaf</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>karaf-ethernet-ip-feature</artifactId>
+ <artifactId>plc4j-karaf-ethernet-ip-feature</artifactId>
<packaging>feature</packaging>
- <name>Integrations: Apache Karaf: EtherNet/IP</name>
+ <name>PLC4J: Integrations: Apache Karaf: EtherNet/IP</name>
<dependencies>
<dependency>
@@ -46,6 +46,15 @@
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <configuration>
+ <usedDependencies>
+ <usedDependency>org.apache.plc4x:plc4j-driver-ethernet-ip</usedDependency>
+ </usedDependencies>
+ </configuration>
+ </plugin>
</plugins>
</build>
diff --git a/integrations/apache-karaf/karaf-modbus-feature/pom.xml b/plc4j/integrations/apache-karaf/karaf-modbus-feature/pom.xml
similarity index 76%
rename from integrations/apache-karaf/karaf-modbus-feature/pom.xml
rename to plc4j/integrations/apache-karaf/karaf-modbus-feature/pom.xml
index f0362c0..50b0924 100644
--- a/integrations/apache-karaf/karaf-modbus-feature/pom.xml
+++ b/plc4j/integrations/apache-karaf/karaf-modbus-feature/pom.xml
@@ -22,15 +22,15 @@
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>apache-karaf</artifactId>
<groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-apache-karaf</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>karaf-modbus-feature</artifactId>
+ <artifactId>plc4j-karaf-modbus-feature</artifactId>
<packaging>feature</packaging>
- <name>Integrations: Apache Karaf: Modbus</name>
+ <name>PLC4J: Integrations: Apache Karaf: Modbus</name>
<dependencies>
<dependency>
@@ -46,6 +46,15 @@
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <configuration>
+ <usedDependencies>
+ <usedDependency>org.apache.plc4x:plc4j-driver-modbus</usedDependency>
+ </usedDependencies>
+ </configuration>
+ </plugin>
</plugins>
</build>
diff --git a/integrations/apache-karaf/karaf-s7-feature/pom.xml b/plc4j/integrations/apache-karaf/karaf-s7-feature/pom.xml
similarity index 76%
copy from integrations/apache-karaf/karaf-s7-feature/pom.xml
copy to plc4j/integrations/apache-karaf/karaf-s7-feature/pom.xml
index 47f3ad2..9930826 100644
--- a/integrations/apache-karaf/karaf-s7-feature/pom.xml
+++ b/plc4j/integrations/apache-karaf/karaf-s7-feature/pom.xml
@@ -22,15 +22,15 @@
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>apache-karaf</artifactId>
<groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-apache-karaf</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>karaf-s7-feature</artifactId>
+ <artifactId>plc4j-karaf-s7-feature</artifactId>
<packaging>feature</packaging>
- <name>Integrations: Apache Karaf: S7</name>
+ <name>PLC4J: Integrations: Apache Karaf: S7</name>
<dependencies>
<dependency>
@@ -46,6 +46,15 @@
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <configuration>
+ <usedDependencies>
+ <usedDependency>org.apache.plc4x:plc4j-driver-s7</usedDependency>
+ </usedDependencies>
+ </configuration>
+ </plugin>
</plugins>
</build>
diff --git a/integrations/apache-karaf/karaf-simulated-feature/pom.xml b/plc4j/integrations/apache-karaf/karaf-simulated-feature/pom.xml
similarity index 75%
rename from integrations/apache-karaf/karaf-simulated-feature/pom.xml
rename to plc4j/integrations/apache-karaf/karaf-simulated-feature/pom.xml
index 53659ed..30c72de 100644
--- a/integrations/apache-karaf/karaf-simulated-feature/pom.xml
+++ b/plc4j/integrations/apache-karaf/karaf-simulated-feature/pom.xml
@@ -22,15 +22,15 @@
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>apache-karaf</artifactId>
<groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-apache-karaf</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>karaf-simulated-feature</artifactId>
+ <artifactId>plc4j-karaf-simulated-feature</artifactId>
<packaging>feature</packaging>
- <name>Integrations: Apache Karaf: Simulated</name>
+ <name>PLC4J: Integrations: Apache Karaf: Simulated</name>
<dependencies>
<dependency>
@@ -46,6 +46,15 @@
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <configuration>
+ <usedDependencies>
+ <usedDependency>org.apache.plc4x:plc4j-driver-simulated</usedDependency>
+ </usedDependencies>
+ </configuration>
+ </plugin>
</plugins>
</build>
diff --git a/integrations/apache-karaf/pom.xml b/plc4j/integrations/apache-karaf/pom.xml
similarity index 87%
rename from integrations/apache-karaf/pom.xml
rename to plc4j/integrations/apache-karaf/pom.xml
index 2932009..38b6971 100644
--- a/integrations/apache-karaf/pom.xml
+++ b/plc4j/integrations/apache-karaf/pom.xml
@@ -23,15 +23,15 @@
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>integrations</artifactId>
<groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j-integrations</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>apache-karaf</artifactId>
+ <artifactId>plc4j-apache-karaf</artifactId>
<packaging>pom</packaging>
- <name>Integrations: Apache Karaf</name>
+ <name>PLC4J: Integrations: Apache Karaf</name>
<description>Integration module for integrating PLC4X into Apache Karaf.</description>
<properties>
@@ -50,15 +50,6 @@
</modules>
<build>
- <plugins>
- <plugin>
- <groupId>com.buschmais.jqassistant</groupId>
- <artifactId>jqassistant-maven-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
- </plugins>
<pluginManagement>
<plugins>
<plugin>
diff --git a/integrations/apache-nifi/nifi-plc4x-nar/false-positives.xml b/plc4j/integrations/apache-nifi/nifi-plc4x-nar/false-positives.xml
similarity index 100%
rename from integrations/apache-nifi/nifi-plc4x-nar/false-positives.xml
rename to plc4j/integrations/apache-nifi/nifi-plc4x-nar/false-positives.xml
diff --git a/integrations/apache-nifi/nifi-plc4x-nar/pom.xml b/plc4j/integrations/apache-nifi/nifi-plc4x-nar/pom.xml
similarity index 73%
rename from integrations/apache-nifi/nifi-plc4x-nar/pom.xml
rename to plc4j/integrations/apache-nifi/nifi-plc4x-nar/pom.xml
index cea180e..10d2e67 100644
--- a/integrations/apache-nifi/nifi-plc4x-nar/pom.xml
+++ b/plc4j/integrations/apache-nifi/nifi-plc4x-nar/pom.xml
@@ -18,14 +18,14 @@
<parent>
<groupId>org.apache.plc4x</groupId>
- <artifactId>apache-nifi</artifactId>
+ <artifactId>plc4j-apache-nifi</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>nifi-plc4x-nar</artifactId>
+ <artifactId>plc4j-nifi-plc4x-nar</artifactId>
<packaging>nar</packaging>
- <name>Integrations: Apache Nifi: NAR</name>
+ <name>PLC4J: Integrations: Apache Nifi: NAR</name>
<properties>
<maven.javadoc.skip>true</maven.javadoc.skip>
@@ -42,6 +42,21 @@
<suppressionFiles>${project.basedir}/false-positives.xml</suppressionFiles>
</configuration>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <configuration>
+ <usedDependencies>
+ <usedDependency>org.apache.plc4x:plc4j-nifi-plc4x-processors</usedDependency>
+ <usedDependency>org.apache.plc4x:plc4j-api</usedDependency>
+ <usedDependency>org.apache.plc4x:plc4j-driver-ads</usedDependency>
+ <usedDependency>org.apache.plc4x:plc4j-driver-ethernet-ip</usedDependency>
+ <usedDependency>org.apache.plc4x:plc4j-driver-modbus</usedDependency>
+ <usedDependency>org.apache.plc4x:plc4j-driver-s7</usedDependency>
+ <usedDependency>org.apache.plc4x:plc4j-driver-simulated</usedDependency>
+ </usedDependencies>
+ </configuration>
+ </plugin>
</plugins>
</pluginManagement>
</build>
@@ -49,7 +64,7 @@
<dependencies>
<dependency>
<groupId>org.apache.plc4x</groupId>
- <artifactId>nifi-plc4x-processors</artifactId>
+ <artifactId>plc4j-nifi-plc4x-processors</artifactId>
<version>0.4.0-SNAPSHOT</version>
</dependency>
<!-- PLC4X -->
diff --git a/integrations/apache-nifi/nifi-plc4x-processors/pom.xml b/plc4j/integrations/apache-nifi/nifi-plc4x-processors/pom.xml
similarity index 92%
rename from integrations/apache-nifi/nifi-plc4x-processors/pom.xml
rename to plc4j/integrations/apache-nifi/nifi-plc4x-processors/pom.xml
index cc2f500..e21f1df 100644
--- a/integrations/apache-nifi/nifi-plc4x-processors/pom.xml
+++ b/plc4j/integrations/apache-nifi/nifi-plc4x-processors/pom.xml
@@ -18,13 +18,13 @@
<parent>
<groupId>org.apache.plc4x</groupId>
- <artifactId>apache-nifi</artifactId>
+ <artifactId>plc4j-apache-nifi</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>nifi-plc4x-processors</artifactId>
+ <artifactId>plc4j-nifi-plc4x-processors</artifactId>
- <name>Integrations: Apache Nifi: Processors</name>
+ <name>PLC4J: Integrations: Apache Nifi: Processors</name>
<dependencies>
<dependency>
diff --git a/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/BasePlc4xProcessor.java b/plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/BasePlc4xProcessor.java
similarity index 100%
rename from integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/BasePlc4xProcessor.java
rename to plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/BasePlc4xProcessor.java
diff --git a/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/Plc4xSinkProcessor.java b/plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/Plc4xSinkProcessor.java
similarity index 100%
rename from integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/Plc4xSinkProcessor.java
rename to plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/Plc4xSinkProcessor.java
diff --git a/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/Plc4xSourceProcessor.java b/plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/Plc4xSourceProcessor.java
similarity index 100%
rename from integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/Plc4xSourceProcessor.java
rename to plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/Plc4xSourceProcessor.java
diff --git a/integrations/apache-nifi/nifi-plc4x-processors/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor b/plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor
similarity index 100%
rename from integrations/apache-nifi/nifi-plc4x-processors/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor
rename to plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor
diff --git a/integrations/apache-nifi/nifi-plc4x-processors/src/test/java/org/apache/plc4x/processors/plc4x4nifi/Plc4xSinkProcessorTest.java b/plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/test/java/org/apache/plc4x/processors/plc4x4nifi/Plc4xSinkProcessorTest.java
similarity index 100%
rename from integrations/apache-nifi/nifi-plc4x-processors/src/test/java/org/apache/plc4x/processors/plc4x4nifi/Plc4xSinkProcessorTest.java
rename to plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/test/java/org/apache/plc4x/processors/plc4x4nifi/Plc4xSinkProcessorTest.java
diff --git a/integrations/apache-nifi/nifi-plc4x-processors/src/test/java/org/apache/plc4x/processors/plc4x4nifi/Plc4xSourceProcessorTest.java b/plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/test/java/org/apache/plc4x/processors/plc4x4nifi/Plc4xSourceProcessorTest.java
similarity index 100%
rename from integrations/apache-nifi/nifi-plc4x-processors/src/test/java/org/apache/plc4x/processors/plc4x4nifi/Plc4xSourceProcessorTest.java
rename to plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/test/java/org/apache/plc4x/processors/plc4x4nifi/Plc4xSourceProcessorTest.java
diff --git a/integrations/apache-nifi/pom.xml b/plc4j/integrations/apache-nifi/pom.xml
similarity index 96%
rename from integrations/apache-nifi/pom.xml
rename to plc4j/integrations/apache-nifi/pom.xml
index 096a1a2..4875900 100644
--- a/integrations/apache-nifi/pom.xml
+++ b/plc4j/integrations/apache-nifi/pom.xml
@@ -18,14 +18,14 @@
<parent>
<groupId>org.apache.plc4x</groupId>
- <artifactId>integrations</artifactId>
+ <artifactId>plc4j-integrations</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>apache-nifi</artifactId>
+ <artifactId>plc4j-apache-nifi</artifactId>
<packaging>pom</packaging>
- <name>Integrations: Apache Nifi</name>
+ <name>PLC4J: Integrations: Apache Nifi</name>
<description>Integration module for integrating PLC4X into Apache Nifi.</description>
<properties>
diff --git a/integrations/apache-karaf/karaf-s7-feature/pom.xml b/plc4j/integrations/pom.xml
similarity index 53%
rename from integrations/apache-karaf/karaf-s7-feature/pom.xml
rename to plc4j/integrations/pom.xml
index 47f3ad2..3df6cdd 100644
--- a/integrations/apache-karaf/karaf-s7-feature/pom.xml
+++ b/plc4j/integrations/pom.xml
@@ -8,7 +8,7 @@
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
+ http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
@@ -16,37 +16,29 @@
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
- -->
+ --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>apache-karaf</artifactId>
<groupId>org.apache.plc4x</groupId>
+ <artifactId>plc4j</artifactId>
<version>0.4.0-SNAPSHOT</version>
</parent>
- <artifactId>karaf-s7-feature</artifactId>
- <packaging>feature</packaging>
-
- <name>Integrations: Apache Karaf: S7</name>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.plc4x</groupId>
- <artifactId>plc4j-driver-s7</artifactId>
- <version>0.4.0-SNAPSHOT</version>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.karaf.tooling</groupId>
- <artifactId>karaf-maven-plugin</artifactId>
- </plugin>
- </plugins>
- </build>
+ <artifactId>plc4j-integrations</artifactId>
+ <packaging>pom</packaging>
+
+ <name>PLC4J: Integrations</name>
+ <description>Parent of all product specific integration modules.</description>
+
+ <modules>
+ <module>apache-camel</module>
+ <module>apache-edgent</module>
+ <module>apache-kafka</module>
+ <module>apache-nifi</module>
+ <module>apache-karaf</module>
+ <module>apache-calcite</module>
+ </modules>
</project>
\ No newline at end of file
diff --git a/plc4j/pom.xml b/plc4j/pom.xml
index 9458652..a99925e 100644
--- a/plc4j/pom.xml
+++ b/plc4j/pom.xml
@@ -38,6 +38,302 @@
<module>drivers</module>
<module>protocols</module>
<module>utils</module>
+
+ <module>examples</module>
+ <module>integrations</module>
</modules>
+ <build>
+ <plugins>
+
+ <!-- Compile any groovy code located in "src/test/groovy" -->
+ <plugin>
+ <groupId>org.codehaus.gmavenplus</groupId>
+ <artifactId>gmavenplus-plugin</artifactId>
+ <version>1.6.2</version>
+ <executions>
+ <execution>
+ <id>compile-groovy-tests</id>
+ <phase>test-compile</phase>
+ <goals>
+ <goal>addTestSources</goal>
+ <goal>compileTests</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!--
+ This plugin doesn't really do much, it makes sure the jacoco agent
+ is downloaded and that the path to this is saved in an environment
+ variable so we can access this later on in the build.
+ -->
+ <plugin>
+ <groupId>org.jacoco</groupId>
+ <artifactId>jacoco-maven-plugin</artifactId>
+ <executions>
+ <!--
+ Prepares the property pointing to the JaCoCo runtime agent which
+ is passed as VM argument when Maven the Surefire plugin is executed.
+ -->
+ <execution>
+ <id>pre-unit-test</id>
+ <phase>generate-test-sources</phase>
+ <goals>
+ <goal>prepare-agent</goal>
+ </goals>
+ <configuration>
+ <!--
+ Sets the name of the property containing the settings
+ for JaCoCo runtime agent.
+ -->
+ <propertyName>surefireArgLine</propertyName>
+ </configuration>
+ </execution>
+ <!--
+ Prepares the property pointing to the JaCoCo runtime agent which
+ is passed as VM argument when Maven the Failsafe plugin is executed.
+ -->
+ <execution>
+ <id>pre-integration-test</id>
+ <phase>pre-integration-test</phase>
+ <goals>
+ <goal>prepare-agent-integration</goal>
+ </goals>
+ <configuration>
+ <!--
+ Sets the name of the property containing the settings
+ for JaCoCo runtime agent.
+ -->
+ <propertyName>failsafeArgLine</propertyName>
+ </configuration>
+ </execution>
+ <!--
+ Check if the unit-test-coverage is at least a certain minimum.
+ -->
+ <execution>
+ <id>check-coverage</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>check</goal>
+ </goals>
+ <configuration>
+ <!-- TODO: Turn this on as soon as possible. -->
+ <haltOnFailure>false</haltOnFailure>
+ <rules>
+ <rule implementation="org.jacoco.maven.RuleConfiguration">
+ <element>BUNDLE</element>
+ <limits>
+ <!-- Fail the build if the instruction level coverage is below 80%. -->
+ <limit implementation="org.jacoco.report.check.Limit">
+ <counter>INSTRUCTION</counter>
+ <value>COVEREDRATIO</value>
+ <minimum>0.50</minimum>
+ </limit>
+ <!-- Fail the build if there are classes without any coverage. -->
+ <limit implementation="org.jacoco.report.check.Limit">
+ <counter>CLASS</counter>
+ <value>MISSEDCOUNT</value>
+ <maximum>0</maximum>
+ </limit>
+ </limits>
+ </rule>
+ </rules>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!--
+ Make the surefire execute all unit-tests
+ -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <!--
+ We have to slightly increase the heap-size or some tests will fail.
+ Notice the @ instead of the $ as prefix? That's late evaluation.
+ -->
+ <argLine>-Xmx256m @{surefireArgLine}</argLine>
+ <includes>
+ <include>**/*Test.java</include>
+ <include>**/*Tests.java</include>
+ <include>**/*Spec.java</include>
+ </includes>
+ </configuration>
+ </plugin>
+
+ <!--
+ Generate an OSGI compatible MANIFEST file.
+ -->
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>bundle-manifest</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>manifest</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!--
+ Use the MANIFEST file generated by the maven-bundle-plugin.
+ -->
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
+ </archive>
+ </configuration>
+ </plugin>
+
+ <!--
+ Make the failsafe execute all integration-tests
+ -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>integration-test</goal>
+ <goal>verify</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <!--
+ Notice the @ instead of the $ as prefix? That's late evaluation.
+ -->
+ <argLine>@{failsafeArgLine}</argLine>
+ </configuration>
+ </plugin>
+
+ <!--
+ Even if Maven transitively pulls in dependencies, relying on these can
+ quite often cause hard to find problems. So it's a good practice to make
+ sure everything directly required is also directly added as a dependency.
+ On the other side adding unused dependency only over-complicates the
+ the dependency graph, so the maven-dependency-plugin checks we depend on
+ what we need and only that and that runtime dependencies are correctly
+ imported with runtime scope.
+ -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>check-dependencies</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>analyze-only</goal>
+ </goals>
+ <configuration>
+ <failOnWarning>true</failOnWarning>
+ <ignoredDependencies>
+ <ignoredDependency>org.assertj:assertj-core</ignoredDependency>
+ <ignoredDependency>junit:junit</ignoredDependency>
+ <ignoredDependency>org.junit.jupiter:junit-jupiter-api</ignoredDependency>
+ <ignoredDependency>org.junit.jupiter:junit-jupiter-params</ignoredDependency>
+ <ignoredDependency>org.junit.jupiter:junit-jupiter-engine</ignoredDependency>
+ <ignoredDependency>org.junit.vintage:junit-vintage-engine</ignoredDependency>
+ <ignoredDependency>org.hamcrest:hamcrest-core</ignoredDependency>
+ <ignoredDependency>org.hamcrest:hamcrest-library</ignoredDependency>
+ <ignoredDependency>org.mockito:mockito-core</ignoredDependency>
+ <ignoredDependency>org.mockito:mockito-junit-jupiter</ignoredDependency>
+ <ignoredDependency>org.slf4j:slf4j-api</ignoredDependency>
+ <ignoredDependency>ch.qos.logback:logback-classic</ignoredDependency>
+ <ignoredDependency>org.codehaus.groovy:groovy-test-junit5</ignoredDependency>
+ <ignoredDependency>org.codehaus.groovy:groovy</ignoredDependency>
+ <ignoredDependency>com.athaydes:spock-reports</ignoredDependency>
+ </ignoredDependencies>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+ <!-- Dependencies common to all java modules -->
+ <dependencies>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <!-- JUnit 4 Support -->
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <!-- JUnit 5 Support -->
+ <dependency>
+ <groupId>org.junit.jupiter</groupId>
+ <artifactId>junit-jupiter-api</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.junit.jupiter</groupId>
+ <artifactId>junit-jupiter-params</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.junit.jupiter</groupId>
+ <artifactId>junit-jupiter-engine</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.junit.vintage</groupId>
+ <artifactId>junit-vintage-engine</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-library</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-junit-jupiter</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.assertj</groupId>
+ <artifactId>assertj-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy-test-junit5</artifactId>
+ <version>2.5.3</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
</project>
\ No newline at end of file
diff --git a/plc4j/protocols/delta-v/pom.xml b/plc4j/protocols/delta-v/pom.xml
index f3ddfca..a06ded5 100644
--- a/plc4j/protocols/delta-v/pom.xml
+++ b/plc4j/protocols/delta-v/pom.xml
@@ -67,6 +67,11 @@
<scope>test</scope>
</dependency>
<dependency>
+ <groupId>org.elasticsearch</groupId>
+ <artifactId>elasticsearch-x-content</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
<groupId>org.elasticsearch.plugin</groupId>
<artifactId>transport-netty4-client</artifactId>
<scope>test</scope>
@@ -82,6 +87,16 @@
<build>
<plugins>
<plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <configuration>
+ <usedDependencies>
+ <usedDependency>org.pcap4j:pcap4j-packetfactory-static</usedDependency>
+ <usedDependency>de.dentrassi.elasticsearch:log4j2-mock</usedDependency>
+ </usedDependencies>
+ </configuration>
+ </plugin>
+ <plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
diff --git a/pom.xml b/pom.xml
index b1ce6e6..45e800e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -166,12 +166,6 @@
<!-- Python language binding-->
<module>plc4py</module>
- <!-- Integration modules for other frameworks -->
- <module>integrations</module>
-
- <!-- Examples -->
- <module>examples</module>
-
<!-- Tools needed throughout the build -->
<module>tools</module>
</modules>
@@ -765,23 +759,6 @@
</executions>
</plugin>
- <!-- Compile any groovy code located in "src/test/groovy" -->
- <plugin>
- <groupId>org.codehaus.gmavenplus</groupId>
- <artifactId>gmavenplus-plugin</artifactId>
- <version>1.6.2</version>
- <executions>
- <execution>
- <id>compile-groovy-tests</id>
- <phase>test-compile</phase>
- <goals>
- <goal>addTestSources</goal>
- <goal>compileTests</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
<!--
===================================
== ==
@@ -1353,27 +1330,6 @@
-->
<profile>
<id>jenkins-build</id>
- <properties>
- </properties>
- <build>
- <plugins>
- <!--TODO Remove this after fix for NVE CVS-->
- <plugin>
- <groupId>org.owasp</groupId>
- <artifactId>dependency-check-maven</artifactId>
- <executions>
- <execution>
- <goals>
- <goal>check</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <failBuildOnCVSS>8</failBuildOnCVSS>
- </configuration>
- </plugin>
- </plugins>
- </build>
</profile>
<!--
@@ -1427,294 +1383,6 @@
</build>
</profile>
- <!--
- This profile has java-specific plugin configurations
- that might not apply to other languages.
- -->
- <profile>
- <id>java-module</id>
- <activation>
- <file>
- <exists>src/main/java</exists>
- </file>
- </activation>
-
- <!-- Dependencies common to all java modules -->
- <dependencies>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- </dependency>
- <dependency>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-classic</artifactId>
- <scope>test</scope>
- </dependency>
-
- <!-- JUnit 4 Support -->
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- <!-- JUnit 5 Support -->
- <dependency>
- <groupId>org.junit.jupiter</groupId>
- <artifactId>junit-jupiter-api</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.junit.jupiter</groupId>
- <artifactId>junit-jupiter-params</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.junit.jupiter</groupId>
- <artifactId>junit-jupiter-engine</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.junit.vintage</groupId>
- <artifactId>junit-vintage-engine</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.hamcrest</groupId>
- <artifactId>hamcrest-core</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.hamcrest</groupId>
- <artifactId>hamcrest-library</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-core</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-junit-jupiter</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.assertj</groupId>
- <artifactId>assertj-core</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.codehaus.groovy</groupId>
- <artifactId>groovy-test-junit5</artifactId>
- <version>2.5.3</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <!--
- Even if Maven transitively pulls in dependencies, relying on these can
- quite often cause hard to find problems. So it's a good practice to make
- sure everything directly required is also directly added as a dependency.
- On the other side adding unused dependency only over-complicates the
- the dependency graph, so the maven-dependency-plugin checks we depend on
- what we need and only that and that runtime dependencies are correctly
- imported with runtime scope.
- -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-dependency-plugin</artifactId>
- <executions>
- <execution>
- <id>check-dependencies</id>
- <phase>verify</phase>
- <goals>
- <goal>analyze-only</goal>
- </goals>
- <configuration>
- <failOnWarning>true</failOnWarning>
- <ignoredDependencies>
- <ignoredDependency>org.assertj:assertj-core</ignoredDependency>
- <ignoredDependency>junit:junit</ignoredDependency>
- <ignoredDependency>org.junit.jupiter:junit-jupiter-api</ignoredDependency>
- <ignoredDependency>org.junit.jupiter:junit-jupiter-params</ignoredDependency>
- <ignoredDependency>org.junit.jupiter:junit-jupiter-engine</ignoredDependency>
- <ignoredDependency>org.junit.vintage:junit-vintage-engine</ignoredDependency>
- <ignoredDependency>org.hamcrest:hamcrest-core</ignoredDependency>
- <ignoredDependency>org.hamcrest:hamcrest-library</ignoredDependency>
- <ignoredDependency>org.mockito:mockito-core</ignoredDependency>
- <ignoredDependency>org.mockito:mockito-junit-jupiter</ignoredDependency>
- <ignoredDependency>org.slf4j:slf4j-api</ignoredDependency>
- <ignoredDependency>ch.qos.logback:logback-classic</ignoredDependency>
- <ignoredDependency>org.codehaus.groovy:groovy-test-junit5</ignoredDependency>
- <ignoredDependency>org.codehaus.groovy:groovy</ignoredDependency>
- <ignoredDependency>com.athaydes:spock-reports</ignoredDependency>
- </ignoredDependencies>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- <!--
- This plugin doesn't really do much, it makes sure the jacoco agent
- is downloaded and that the path to this is saved in an environment
- variable so we can access this later on in the build.
- -->
- <plugin>
- <groupId>org.jacoco</groupId>
- <artifactId>jacoco-maven-plugin</artifactId>
- <executions>
- <!--
- Prepares the property pointing to the JaCoCo runtime agent which
- is passed as VM argument when Maven the Surefire plugin is executed.
- -->
- <execution>
- <id>pre-unit-test</id>
- <phase>generate-test-sources</phase>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- <configuration>
- <!--
- Sets the name of the property containing the settings
- for JaCoCo runtime agent.
- -->
- <propertyName>surefireArgLine</propertyName>
- </configuration>
- </execution>
- <!--
- Prepares the property pointing to the JaCoCo runtime agent which
- is passed as VM argument when Maven the Failsafe plugin is executed.
- -->
- <execution>
- <id>pre-integration-test</id>
- <phase>pre-integration-test</phase>
- <goals>
- <goal>prepare-agent-integration</goal>
- </goals>
- <configuration>
- <!--
- Sets the name of the property containing the settings
- for JaCoCo runtime agent.
- -->
- <propertyName>failsafeArgLine</propertyName>
- </configuration>
- </execution>
- <!--
- Check if the unit-test-coverage is at least a certain minimum.
- -->
- <execution>
- <id>check-coverage</id>
- <phase>verify</phase>
- <goals>
- <goal>check</goal>
- </goals>
- <configuration>
- <!-- TODO: Turn this on as soon as possible. -->
- <haltOnFailure>false</haltOnFailure>
- <rules>
- <rule implementation="org.jacoco.maven.RuleConfiguration">
- <element>BUNDLE</element>
- <limits>
- <!-- Fail the build if the instruction level coverage is below 80%. -->
- <limit implementation="org.jacoco.report.check.Limit">
- <counter>INSTRUCTION</counter>
- <value>COVEREDRATIO</value>
- <minimum>0.50</minimum>
- </limit>
- <!-- Fail the build if there are classes without any coverage. -->
- <limit implementation="org.jacoco.report.check.Limit">
- <counter>CLASS</counter>
- <value>MISSEDCOUNT</value>
- <maximum>0</maximum>
- </limit>
- </limits>
- </rule>
- </rules>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- <!--
- Make the surefire execute all unit-tests
- -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <!--
- We have to slightly increase the heap-size or some tests will fail.
- Notice the @ instead of the $ as prefix? That's late evaluation.
- -->
- <argLine>-Xmx256m @{surefireArgLine}</argLine>
- <includes>
- <include>**/*Test.java</include>
- <include>**/*Tests.java</include>
- <include>**/*Spec.java</include>
- </includes>
- </configuration>
- </plugin>
-
- <!--
- Generate an OSGI compatible MANIFEST file.
- -->
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <executions>
- <execution>
- <id>bundle-manifest</id>
- <phase>process-classes</phase>
- <goals>
- <goal>manifest</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
- <!--
- Use the MANIFEST file generated by the maven-bundle-plugin.
- -->
- <plugin>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <archive>
- <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
- </plugin>
-
- <!--
- Make the failsafe execute all integration-tests
- -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-failsafe-plugin</artifactId>
- <executions>
- <execution>
- <goals>
- <goal>integration-test</goal>
- <goal>verify</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <!--
- Notice the @ instead of the $ as prefix? That's late evaluation.
- -->
- <argLine>@{failsafeArgLine}</argLine>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
-
<profile>
<id>with-jqassistant</id>
<build>