- Initial checkin to the new repo.
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..ac3cf67
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,97 @@
+# User-specific stuff:
+.idea/**
+*.iml
+
+# Sensitive or high-churn files:
+.idea/**/dataSources/
+.idea/**/dataSources.ids
+.idea/**/dataSources.xml
+.idea/**/dataSources.local.xml
+.idea/**/sqlDataSources.xml
+.idea/**/dynamic.xml
+.idea/**/uiDesigner.xml
+
+# JIRA plugin
+atlassian-ide-plugin.xml
+
+### Java template
+# Compiled class file
+*.class
+
+# Log file
+*.log
+
+# Package Files #
+*.jar
+*.war
+*.ear
+*.zip
+*.tar.gz
+*.rar
+
+# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
+hs_err_pid*
+
+# Asciidoctor plugin
+.asciidoctor
+
+### Maven template
+target/
+pom.xml.tag
+pom.xml.releaseBackup
+pom.xml.versionsBackup
+pom.xml.next
+release.properties
+dependency-reduced-pom.xml
+buildNumber.properties
+.mvn/timing.properties
+
+### Eclipse template
+.metadata
+*.tmp
+*.bak
+*.swp
+*~.nib
+local.properties
+.settings/
+.loadpath
+.recommenders
+.project
+.classpath
+
+# Locally stored "Eclipse launch configurations"
+*.launch
+
+# STS (Spring Tool Suite)
+.springBeans
+
+# Scala IDE specific (Scala & Java development for Eclipse)
+.cache-main
+.scala_dependencies
+.worksheet
+
+# Emacs backup files
+*~
+.scannerwork
+
+spock-reports
+
+# Other exclusions
+
+.DS_Store
+elasticsearch-data/
+jqassistant/
+
+# Exclude the C++ libs
+plc4cpp/libs/libs/
+plc4cpp/.idea/
+plc4cpp/cmake-build-debug/
+
+ # Ignore VisualStudio related files
+**/CMakeSettings.json
+**/.vs/**
+
+# Exclude temporary python stuff
+plc4py/venv/
+**/__pycache__/**/*
+/plc4cpp/.vscode/ipch
diff --git a/Jenkinsfile b/Jenkinsfile
new file mode 100644
index 0000000..20f16fd
--- /dev/null
+++ b/Jenkinsfile
@@ -0,0 +1,235 @@
+#!groovy
+
+/*
+ *
+ * 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.
+ *
+ */
+pipeline {
+
+ agent {
+ node {
+ label 'plc4x'
+ }
+ }
+
+ environment {
+ // It seems the login the jenkins slave uses, doesn't pick up the environment changes,
+ // so we have to try to manually add theme here.
+ MAVEN_HOME = '/opt/maven'
+ PATH = "${MAVEN_HOME}/bin:${env.PATH}"
+
+ PLC4X_BUILD_ON_JENKINS = true
+ JENKINS_PROFILE = 'jenkins-build'
+ // On non develop build we don't want to pollute the global m2 repo
+ MVN_LOCAL_REPO_OPT = '-Dmaven.repo.local=.repository'
+ // Test failures will be handled by the jenkins junit steps and mark the build as unstable.
+ MVN_TEST_FAIL_IGNORE = '-Dmaven.test.failure.ignore=true'
+ }
+
+ tools {
+ maven 'Maven 3 (latest)'
+ jdk 'JDK 1.8 (latest)'
+ }
+
+ options {
+ // Kill this job after one hour.
+ timeout(time: 2, unit: 'HOURS')
+ // When we have test-fails e.g. we don't need to run the remaining steps
+ skipStagesAfterUnstable()
+ buildDiscarder(logRotator(numToKeepStr: '5', artifactNumToKeepStr: '3'))
+ }
+
+ stages {
+ stage('Initialization') {
+ steps {
+ echo 'Building Branch: ' + env.BRANCH_NAME
+ echo 'Using PATH = ' + env.PATH
+ }
+ }
+
+ stage('Cleanup') {
+ steps {
+ echo 'Cleaning up the workspace'
+ deleteDir()
+ }
+ }
+
+ stage('Checkout') {
+ steps {
+ echo 'Checking out branch ' + env.BRANCH_NAME
+ checkout scm
+ }
+ }
+
+ stage('Build') {
+ when {
+ expression {
+ env.BRANCH_NAME != 'develop'
+ }
+ }
+ steps {
+ echo 'Building'
+ sh 'mvn -P${JENKINS_PROFILE},development,with-cpp,with-java,with-dotnet,with-python,with-proxies,with-sandbox ${MVN_TEST_FAIL_IGNORE} ${MVN_LOCAL_REPO_OPT} clean install'
+ }
+ post {
+ always {
+ junit(testResults: '**/surefire-reports/*.xml', allowEmptyResults: true)
+ junit(testResults: '**/failsafe-reports/*.xml', allowEmptyResults: true)
+ }
+ }
+ }
+
+ stage('Build develop') {
+ when {
+ branch 'develop'
+ }
+ steps {
+ echo 'Building'
+ // Clean up the snapshots directory.
+ dir("local-snapshots-dir/") {
+ deleteDir()
+ }
+
+ // We'll deploy to a relative directory so we can save
+ // that and deploy in a later step on a different node
+ sh 'mvn -U -P${JENKINS_PROFILE},development,with-java,with-dotnet,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/**'
+ }
+ post {
+ always {
+ junit(testResults: '**/surefire-reports/*.xml', allowEmptyResults: true)
+ junit(testResults: '**/failsafe-reports/*.xml', allowEmptyResults: true)
+ }
+ }
+ }
+
+ stage('Deploy') {
+ when {
+ branch 'develop'
+ }
+ // Only the official build nodes have the credentials to deploy setup.
+ agent {
+ node {
+ label 'ubuntu'
+ }
+ }
+ steps {
+ echo 'Deploying'
+ // Clean up the snapshots directory.
+ dir("local-snapshots-dir/") {
+ deleteDir()
+ }
+
+ // Unstash the previously stashed build results.
+ unstash name: 'plc4x-build-snapshots'
+
+ // Deploy the artifacts using the wagon-maven-plugin.
+ sh 'mvn -f jenkins.pom -X -P deploy-snapshots wagon:upload'
+
+ // Clean up the snapshots directory (freeing up more space after deploying).
+ dir("local-snapshots-dir/") {
+ deleteDir()
+ }
+ }
+ }
+
+ }
+
+ // Send out notifications on unsuccessful builds.
+ post {
+ // If this build failed, send an email to the list.
+ failure {
+ script {
+ if(env.BRANCH_NAME == "develop") {
+ emailext(
+ subject: "[BUILD-FAILURE]: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]'",
+ body: """
+BUILD-FAILURE: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]':
+
+Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]</a>"
+""",
+ to: "dev@plc4x.apache.org",
+ recipientProviders: [[$class: 'DevelopersRecipientProvider']]
+ )
+ }
+ }
+ }
+
+ // If this build didn't fail, but there were failing tests, send an email to the list.
+ unstable {
+ script {
+ if(env.BRANCH_NAME == "develop") {
+ emailext(
+ subject: "[BUILD-UNSTABLE]: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]'",
+ body: """
+BUILD-UNSTABLE: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]':
+
+Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]</a>"
+""",
+ to: "dev@plc4x.apache.org",
+ recipientProviders: [[$class: 'DevelopersRecipientProvider']]
+ )
+ }
+ }
+ }
+
+ // Send an email, if the last build was not successful and this one is.
+ success {
+ // Cleanup the build directory if the build was successful
+ // (in this cae we probably don't have to do any post-build analysis)
+ deleteDir()
+ script {
+ if ((env.BRANCH_NAME == "develop") && (currentBuild.previousBuild != null) && (currentBuild.previousBuild.result != 'SUCCESS')) {
+ emailext (
+ subject: "[BUILD-STABLE]: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]'",
+ body: """
+BUILD-STABLE: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]':
+
+Is back to normal.
+""",
+ to: "dev@plc4x.apache.org",
+ recipientProviders: [[$class: 'DevelopersRecipientProvider']]
+ )
+ }
+ }
+ }
+
+ always {
+ script {
+ if(env.BRANCH_NAME == "master") {
+ // Double check if something was really changed as sometimes the
+ // build just runs without any changes.
+ if(currentBuild.changeSets.size() > 0) {
+ emailext(
+ subject: "[COMMIT-TO-MASTER]: A commit to the master branch was made'",
+ body: """
+COMMIT-TO-MASTER: A commit to the master branch was made:
+
+Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]</a>"
+""",
+ to: "dev@plc4x.apache.org",
+ recipientProviders: [[$class: 'DevelopersRecipientProvider']]
+ )
+ }
+ }
+ }
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/language-base/pom.xml b/code-generation/language-base/pom.xml
similarity index 95%
rename from language-base/pom.xml
rename to code-generation/language-base/pom.xml
index 7980f7a..d4e1ed2 100644
--- a/language-base/pom.xml
+++ b/code-generation/language-base/pom.xml
@@ -29,7 +29,7 @@
<artifactId>plc4x-code-generation-language-base</artifactId>
- <name>Sandbox: Code Generation: Language Template Base</name>
+ <name>PLC4X Build Tools: Code Generation: Language Base</name>
<description>Base stuff for building language templates</description>
<dependencies>
diff --git a/language-base/src/main/java/org/apache/plc4x/plugins/codegenerator/language/LanguageOutput.java b/code-generation/language-base/src/main/java/org/apache/plc4x/plugins/codegenerator/language/LanguageOutput.java
similarity index 100%
rename from language-base/src/main/java/org/apache/plc4x/plugins/codegenerator/language/LanguageOutput.java
rename to code-generation/language-base/src/main/java/org/apache/plc4x/plugins/codegenerator/language/LanguageOutput.java
diff --git a/plc4x-maven-plugin/pom.xml b/code-generation/plc4x-maven-plugin/pom.xml
similarity index 98%
rename from plc4x-maven-plugin/pom.xml
rename to code-generation/plc4x-maven-plugin/pom.xml
index 33d3709..bab3c22 100644
--- a/plc4x-maven-plugin/pom.xml
+++ b/code-generation/plc4x-maven-plugin/pom.xml
@@ -31,7 +31,7 @@
<artifactId>plc4x-maven-plugin</artifactId>
<packaging>maven-plugin</packaging>
- <name>Sandbox: Code Generation: PLC4X Maven Plugin</name>
+ <name>PLC4X Build Tools: Code Generation: PLC4X Maven Plugin</name>
<dependencies>
<dependency>
diff --git a/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/GenerateMojo.java b/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/GenerateMojo.java
similarity index 100%
rename from plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/GenerateMojo.java
rename to code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/GenerateMojo.java
diff --git a/code-generation/pom.xml b/code-generation/pom.xml
new file mode 100644
index 0000000..c06ffde
--- /dev/null
+++ b/code-generation/pom.xml
@@ -0,0 +1,113 @@
+<?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>
+
+ <!--
+ This is intentionally set to the apache parent as this way
+ we can release this module separately from the rest of the project
+ -->
+ <parent>
+ <groupId>org.apache</groupId>
+ <artifactId>apache</artifactId>
+ <version>21</version>
+ <relativePath/>
+ </parent>
+
+ <groupId>org.apache.plc4x.plugins</groupId>
+ <artifactId>plc4x-code-generaton</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+
+ <name>PLC4X Build Tools: Code Generation</name>
+ <description>This module groups all the modules that will be moved outside the core repository.</description>
+
+ <properties>
+ <maven.version>3.3.9</maven.version>
+ <java.version>1.8</java.version>
+ </properties>
+
+ <prerequisites>
+ <maven>${maven.version}</maven>
+ </prerequisites>
+
+ <modules>
+ <module>types-base</module>
+ <module>language-base</module>
+ <module>protocol-base</module>
+ <module>plc4x-maven-plugin</module>
+ </modules>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-clean-plugin</artifactId>
+ <version>3.1.0</version>
+ </plugin>
+ <plugin>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>3.0.2</version>
+ </plugin>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.8.0</version>
+ <configuration>
+ <source>${java.version}</source>
+ <target>${java.version}</target>
+ <testSource>${java.version}</testSource>
+ <testTarget>${java.version}</testTarget>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-plugin-plugin</artifactId>
+ <version>3.6.0</version>
+ </plugin>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.22.1</version>
+ </plugin>
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>3.0.2</version>
+ </plugin>
+ <plugin>
+ <artifactId>maven-install-plugin</artifactId>
+ <version>2.5.2</version>
+ </plugin>
+ <plugin>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <version>2.8.2</version>
+ </plugin>
+ <plugin>
+ <artifactId>maven-invoker-plugin</artifactId>
+ <version>3.1.0</version>
+ </plugin>
+ <plugin>
+ <groupId>org.antlr</groupId>
+ <artifactId>antlr4-maven-plugin</artifactId>
+ <version>${antlr.version}</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+</project>
diff --git a/protocol-base/pom.xml b/code-generation/protocol-base/pom.xml
similarity index 95%
rename from protocol-base/pom.xml
rename to code-generation/protocol-base/pom.xml
index 1a58611..6ad27a7 100644
--- a/protocol-base/pom.xml
+++ b/code-generation/protocol-base/pom.xml
@@ -29,7 +29,7 @@
<artifactId>plc4x-code-generation-protocol-base</artifactId>
- <name>Sandbox: Code Generation: Protocol Base</name>
+ <name>PLC4X Build Tools: Code Generation: Protocol Base</name>
<description>Base stuff for building protocols</description>
<dependencies>
diff --git a/protocol-base/src/main/java/org/apache/plc4x/plugins/codegenerator/protocol/Protocol.java b/code-generation/protocol-base/src/main/java/org/apache/plc4x/plugins/codegenerator/protocol/Protocol.java
similarity index 100%
rename from protocol-base/src/main/java/org/apache/plc4x/plugins/codegenerator/protocol/Protocol.java
rename to code-generation/protocol-base/src/main/java/org/apache/plc4x/plugins/codegenerator/protocol/Protocol.java
diff --git a/types-base/pom.xml b/code-generation/types-base/pom.xml
similarity index 95%
rename from types-base/pom.xml
rename to code-generation/types-base/pom.xml
index 03d30ec..11a6ce2 100644
--- a/types-base/pom.xml
+++ b/code-generation/types-base/pom.xml
@@ -29,7 +29,7 @@
<artifactId>plc4x-code-generation-types-base</artifactId>
- <name>Sandbox: Code Generation: Base Types</name>
+ <name>PLC4X Build Tools: Code Generation: Base Types</name>
<description>Base used throughout the code-generation.</description>
</project>
\ No newline at end of file
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/Argument.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/Argument.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/Argument.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/Argument.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/ComplexTypeDefinition.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/ComplexTypeDefinition.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/ComplexTypeDefinition.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/ComplexTypeDefinition.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/DiscriminatedComplexTypeDefinition.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/DiscriminatedComplexTypeDefinition.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/DiscriminatedComplexTypeDefinition.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/DiscriminatedComplexTypeDefinition.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/EnumTypeDefinition.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/EnumTypeDefinition.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/EnumTypeDefinition.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/EnumTypeDefinition.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/TypeDefinition.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/TypeDefinition.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/TypeDefinition.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/definitions/TypeDefinition.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/exceptions/GenerationException.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/exceptions/GenerationException.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/exceptions/GenerationException.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/exceptions/GenerationException.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ArrayField.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ArrayField.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ArrayField.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ArrayField.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ConstField.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ConstField.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ConstField.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ConstField.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/DiscriminatorField.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/DiscriminatorField.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/DiscriminatorField.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/DiscriminatorField.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/Field.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/Field.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/Field.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/Field.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ImplicitField.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ImplicitField.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ImplicitField.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ImplicitField.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/OptionalField.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/OptionalField.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/OptionalField.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/OptionalField.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/PropertyField.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/PropertyField.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/PropertyField.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/PropertyField.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ReservedField.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ReservedField.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ReservedField.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/ReservedField.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/SimpleField.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/SimpleField.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/SimpleField.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/SimpleField.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/SwitchField.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/SwitchField.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/SwitchField.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/SwitchField.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/TypedField.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/TypedField.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/TypedField.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/fields/TypedField.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/ComplexTypeReference.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/ComplexTypeReference.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/ComplexTypeReference.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/ComplexTypeReference.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/SimpleTypeReference.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/SimpleTypeReference.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/SimpleTypeReference.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/SimpleTypeReference.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/SimpleVarLengthTypeReference.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/SimpleVarLengthTypeReference.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/SimpleVarLengthTypeReference.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/SimpleVarLengthTypeReference.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/TypeReference.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/TypeReference.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/TypeReference.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/references/TypeReference.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/BinaryTerm.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/BinaryTerm.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/BinaryTerm.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/BinaryTerm.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/BooleanLiteral.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/BooleanLiteral.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/BooleanLiteral.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/BooleanLiteral.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/Literal.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/Literal.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/Literal.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/Literal.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/NullLiteral.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/NullLiteral.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/NullLiteral.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/NullLiteral.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/NumericLiteral.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/NumericLiteral.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/NumericLiteral.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/NumericLiteral.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/StringLiteral.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/StringLiteral.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/StringLiteral.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/StringLiteral.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/Term.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/Term.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/Term.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/Term.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/TernaryTerm.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/TernaryTerm.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/TernaryTerm.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/TernaryTerm.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/UnaryTerm.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/UnaryTerm.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/UnaryTerm.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/UnaryTerm.java
diff --git a/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/VariableLiteral.java b/code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/VariableLiteral.java
similarity index 100%
rename from types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/VariableLiteral.java
rename to code-generation/types-base/src/main/java/org/apache/plc4x/plugins/codegenerator/types/terms/VariableLiteral.java
diff --git a/pom.xml b/pom.xml
index b15d1e7..648318f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -22,92 +22,15 @@
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>
- <!--
- This is intentionally set to the apache parent as this way
- we can release this module separately from the rest of the project
- -->
- <parent>
- <groupId>org.apache</groupId>
- <artifactId>apache</artifactId>
- <version>21</version>
- <relativePath/>
- </parent>
-
<groupId>org.apache.plc4x.plugins</groupId>
- <artifactId>plc4x-code-generaton-external</artifactId>
+ <artifactId>plc4x-build-tools</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
- <name>Sandbox: Code Generation: External</name>
- <description>This module groups all the modules that will be moved outside the core repository.</description>
-
- <properties>
- <maven.version>3.3.9</maven.version>
- <java.version>1.8</java.version>
- </properties>
-
- <prerequisites>
- <maven>${maven.version}</maven>
- </prerequisites>
+ <name>PLC4X Build-Tools</name>
<modules>
- <module>types-base</module>
- <module>language-base</module>
- <module>protocol-base</module>
- <module>plc4x-maven-plugin</module>
+ <module>code-generation</module>
</modules>
- <build>
- <pluginManagement>
- <plugins>
- <plugin>
- <artifactId>maven-clean-plugin</artifactId>
- <version>3.1.0</version>
- </plugin>
- <plugin>
- <artifactId>maven-resources-plugin</artifactId>
- <version>3.0.2</version>
- </plugin>
- <plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>3.8.0</version>
- <configuration>
- <source>${java.version}</source>
- <target>${java.version}</target>
- <testSource>${java.version}</testSource>
- <testTarget>${java.version}</testTarget>
- </configuration>
- </plugin>
- <plugin>
- <artifactId>maven-plugin-plugin</artifactId>
- <version>3.6.0</version>
- </plugin>
- <plugin>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>2.22.1</version>
- </plugin>
- <plugin>
- <artifactId>maven-jar-plugin</artifactId>
- <version>3.0.2</version>
- </plugin>
- <plugin>
- <artifactId>maven-install-plugin</artifactId>
- <version>2.5.2</version>
- </plugin>
- <plugin>
- <artifactId>maven-deploy-plugin</artifactId>
- <version>2.8.2</version>
- </plugin>
- <plugin>
- <artifactId>maven-invoker-plugin</artifactId>
- <version>3.1.0</version>
- </plugin>
- <plugin>
- <groupId>org.antlr</groupId>
- <artifactId>antlr4-maven-plugin</artifactId>
- <version>${antlr.version}</version>
- </plugin>
- </plugins>
- </pluginManagement>
- </build>
</project>