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/06/18 08:12:23 UTC

[plc4x] branch develop updated (256b9b5 -> 7ee517e)

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

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


    from 256b9b5  [S7] Added Test Example for Mock Driver Format...
     add df3d23a  First stage towards code-gen.
     add 4e8ef99  Code generator is able to build Classes.
     add f0600d0  Now even Inner Classes are supported.
     add 5b77d5b  Added Python Support?!
     add ac79693  Added a Pojo Factoryy.
     add 5590788  Bugfix in the Python code.
     add 778237c  Added Some features and enhancements.
     add 264a616  Some refactorings.
     add 77ae145  Extended IfStatement.
     add a11f01a  Fixed Enum Factory.
     add 579b723  Added Setters to Pojos, did really awesome stuff.
     add 9749552  - Streamlined the calls to run python to be equal for compile and package
     add ad536e0  - Removed the double import of plc4py
     add 3a37395  - Added a new exclusion for Eclipse settings files ".factorypath"
     add dcfac6f  [PLC4X-110] Added VS solution and project
     add 1304684  [PLC4X-110] Added core class implementation
     add b0c6253  [PLC4X-110] Implemented messages and builders
     add fb0a082  Added vscode files to gitignore
     add 10011f9  - Fine tuned the build and integrated it to maven
     add 399d634  - Moved up the format descriptor to the top or visual studio won't be able to read the solution.
     add 8a59973  - Added some documentation on how to use PLC4J - Added a warning to the windows installation guide (If you don't run the setup, things will be problematic)
     add 86cc7ab  - Enabled the .Net build in the Jenkinsfile
     add 5930763  Fix link to material
     add dca9e84  Working on the generated drivers: - Added more general purpose stuff to the dynamic-driver-base - Worked on implementing the actual driver generator - Started documenting the driver and the conventions it expects you to follow - Extended the Jenkinsfile to build the plc4x-maven-plugin first as this is required for the rest of the build - Started working on a skeleton of a generated KNXNet/IP driver
     add 844fc1f  Merge branches 'develop' and 'feature/generated-drivers' of https://gitbox.apache.org/repos/asf/incubator-plc4x into feature/generated-drivers
     add cd5ff24  Merge branch 'develop' of github.com:apache/incubator-plc4x into feature/generated-drivers
     add 3ce6526  - Fixed the link to the conferences page - Added the Meetup in NĂ¼rtingen in February
     add d401a5b  Working on the generated drivers: - Added more general purpose stuff to the dynamic-driver-base - Worked on implementing the actual driver generator - Started documenting the driver and the conventions it expects you to follow
     add 6c54d6c  Merge branches 'develop' and 'feature/generated-drivers' of https://gitbox.apache.org/repos/asf/incubator-plc4x into feature/generated-drivers
     add bfa7428  Merge branches 'develop' and 'feature/generated-drivers' of https://gitbox.apache.org/repos/asf/incubator-plc4x into feature/generated-drivers
     add 5c66bbe  Merge branches 'develop' and 'feature/generated-drivers' of https://gitbox.apache.org/repos/asf/incubator-plc4x into feature/generated-drivers
     add 73bccbe  Got rid of some unneeded double context access.
     add 9e090b3  Merge branches 'develop' and 'feature/generated-drivers' of https://gitbox.apache.org/repos/asf/incubator-plc4x into feature/generated-drivers
     add 73c1ce3  First version able to parse the KNX spec draft and generate java classes that seem to be somewhat valid.
     add d7c70ed  - Working on the protocol spec (Removing inner complex types)
     add ad3a3f2  Merge branches 'feature/code-gen' and 'feature/generated-drivers' of github.com:apache/plc4x into feature/code-gen
     add 4b4b5f8  - Added missing Apache Headers
     add 1df8c8d  Some Documentation... adding Facade Factory.
     add b80c603  Next step in the Refactoring, class structure is way cleaner now.
     add 7e88bdb  Further Refactoring.
     add 780dc6a  Refactoring mostly finished.
     add 4280a69  - Added missing Apache Headers
     add a7198a6  Merge remote-tracking branch 'origin/feature/code-gen' into feature/code-gen
     add 506d0f3  Added Documentation to Expressions.java
     add 09d47b5  Several fixed in the PojoFactory.java. Pojos are now fully runnable java code. Also started BufferUtil.java.
     add 0067266  - Added missing Apache Headers
     add 78bd51d  - Added support for intel based mac systems
     add 06b3ac7  - Merged changes from develop ...
     add 8fffe60  - Fixed some things broken after updating the branch.
     add 4e437ff  - Refactored the S7 spec to be used easier in the code-generators
     add e96d3da  - Refactored the schema definitions to be split up into simple types and complex types.
     add 8498792  - Simplified the simple types ;-)
     add d968d0e  - Refactored the S7 spec to be used easier in the code-generators
     add dddbd76  - Some more work on the maven plugin.
     add 064aa3e  Merge branches 'develop' and 'feature/code-gen' of github.com:apache/plc4x into feature/code-gen
     add 3abd0f5  Added first stub of a grammar for Chris imaginary language.
     add 093aa5e  Improved Antlr grammar for Imaginary Langauge
     add fb24433  - Implemented a first parser built on top of the "immaginery format" and a modified version of Julians antlr4 grammar.
     add 3758ed6  Some Renaming of types to be less ambiguous.
     add cb2f712  - Adjusted the driver spec to some minor input format changes
     add dc312da  - Removed the debug log output
     add 73ca94a  - Adjusted, parser, grammar and spec to now provide a full working example of an ANTLR4 based parser for the imaginary spec language.
     add 4b3d2be  Made the parser set the "parentType" property correctly.
     add 4205a80  Merge branches 'develop' and 'feature/code-gen' of github.com:apache/plc4x into feature/code-gen
     add d3bb09b  - Changed the types used in the grammar to be more of a form "int(\d+)", "uint(\d+)", "float(\d+)"
     add 9dc5002  - Made it possible to distinguish between simpleTypeReferences and complexTypeReferences in the grammar.
     add e39a950  - Introduced a complexTypeReference and renamed simpleType to simpleTypeReference
     add dcccfa3  Merge branches 'develop' and 'feature/code-gen' of github.com:apache/plc4x into feature/code-gen
     add fe609d1  Major refactoring of the maven plugin part ... - Introduced 2 modules "language-base" and "protocol-base" - Introduced 2 implementations for the above base modules "java" and "s7" - Changed the maven plugin to load these language and protocol modules - Got a first working version that generates java code via freemarker - Removed all of the DFDL stuff - Added a dummy project using the maven plugin and both the java and s7 templates to theoretically generate a Java-S7-Driver
     add fe41f6a  Major refactoring, pulling out the actual code generation and preparing the input parsing to be modularized.
     add f8ca1b1  - Finished a first version of pojo-generation for Java
     add 3ade069  - Worked on the generation of discriminated types.
     add fb8bc23  - Refactoring of the spec language to provide better suitable input for the parser generation - Implemented the evaluation of expressions using Apache Commons Jexl - Beautifying of the generated code
     add ea363e0  - Added context parameters (However they currently wouldn't work the way we want them to, as they are created in the sub-type and are not available in the parent).
     add ed40dff  - Updated the spec to not rely on context fields.
     add 341fd14  - Implemented the parsing of arrayFields
     add b4f3ecf  - Implemented the serialization
     add f9d7832  - Fixed an error in the spec
     add 9e13c3e  - Fine-tuned the code generation of optionals
     add 213929e  - Fixed an obvious bug in the code generation for the pojos addressing the discriminator-values.
     add fab6cb9  - Fine-Tuning of the spec (correcting expressions, adding missing payload types to match the parameter types) - Added Array-Access to spec expressions - Made a "curPos" field available to the Jexl execution, if required - Fixed some errors in the MessageFormatListener not omitting the expression ticks - Made the plugin add the generated sources to the project sources (So they are compiled) - Implemented a first mostly working version of the ReadBuffer - Added a Test clas [...]
     add 366c908  - Implemented a Test for the Netty based original S7 driver
     add 87a9a46  - Optimized the generated code to be way more efficient while parsing
     add 0dc23da  - Finished implementing a first working version of the serialization.
     add c3d3981  - Added a ANTLR4 spec for an expression language.
     add 56a750e  - Added a arithmetic expression parser
     add 02aa40c  - Refactored the code generator to use native java code instead of relying on an evaluation engine.
     add 52fe281  - Moved the code that would be required for all Java drivers into a new driver-base-java module.
     add dbf37ee  - Renamed the module again to reduce confusion of the different modules.
     new 7ee517e  Merge branches 'develop' and 'feature/code-gen' of github.com:apache/plc4x into feature/code-gen

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 Jenkinsfile                                        |   16 +
 plc4j/drivers/s7/pom.xml                           |    6 +
 .../java/org/apache/plc4x/java/s7/BenchmarkS7.java |   90 +
 plc4j/examples/hello-webapp/webapp/pom.xml         |    4 +
 plc4j/src/site/asciidoc/index.adoc                 |    2 +-
 protocols/knxnet-ip/pom.xml                        |   11 +-
 protocols/knxnet-ip/src/main/java/.keepMe          |   20 -
 .../plc4x/protocols/knxnetip/protocol.dfdl.xsd     |  295 ++-
 protocols/{knxnet-ip => plc4x}/pom.xml             |   17 +-
 .../main/resources/daffodil-built-in-catalog.xml   |   10 +-
 .../org/apache/plc4x/protocols/protocol.dfdl.xsd   |  129 ++
 protocols/pom.xml                                  |  159 ++
 protocols/s7/pom.xml                               |   28 +-
 protocols/s7/src/main/java/.keepMe                 |   20 -
 .../main/resources/daffodil-built-in-catalog.xml   |    5 +
 .../org/apache/plc4x/protocols/protocol.dfdl.xsd   |  129 ++
 .../apache/plc4x/protocols/s7/protocol.dfdl.xsd    | 1446 +++++++------
 .../apache/plc4x/protocols/s7/protocol.scxml.xml   |   86 +-
 .../org/apache/plc4x/protocols/s7/protocol.spec    |  203 ++
 .../org/apache/plc4x/protocols/s7/ManualTest.java  |    1 +
 .../org/apache/plc4x/protocols/s7/protocol.tdml    |  683 ++++---
 protocols/test-utils/pom.xml                       |    4 +
 .../plc4x/protocols/AbstractProtocolTest.java      |    3 +
 {protocols/s7 => sandbox/code-gen}/pom.xml         |   47 +-
 sandbox/code-gen/src/main/antlr4/imaginary.g4      |  131 ++
 .../java/org/apache/plc4x/codegen/DFDLUtil.java    |   96 +
 .../java/org/apache/plc4x/codegen/api/Buffer.java} |   14 +-
 .../apache/plc4x/codegen/ast/AbstractNode.java}    |   15 +-
 .../plc4x/codegen/ast/AssignementExpression.java}  |   30 +-
 .../apache/plc4x/codegen/ast/BinaryExpression.java |   61 +
 .../java/org/apache/plc4x/codegen/ast/Block.java}  |   36 +-
 .../apache/plc4x/codegen/ast/BlockBuilder.java}    |   31 +-
 .../apache/plc4x/codegen/ast/CallExpression.java   |   62 +
 .../apache/plc4x/codegen/ast/ClassDeclaration.java |   73 +
 .../org/apache/plc4x/codegen/ast/CodeWriter.java   |   75 +
 .../plc4x/codegen/ast/ConstantExpression.java}     |   29 +-
 .../plc4x/codegen/ast/ConstructorDeclaration.java} |   24 +-
 .../plc4x/codegen/ast/DeclarationStatement.java    |   51 +
 .../apache/plc4x/codegen/ast/ExceptionType.java}   |   23 +-
 .../org/apache/plc4x/codegen/ast/Expression.java}  |   10 +-
 .../org/apache/plc4x/codegen/ast/Expressions.java  |  324 +++
 .../apache/plc4x/codegen/ast/FieldDeclaration.java |   56 +
 .../apache/plc4x/codegen/ast/FieldReference.java}  |   27 +-
 .../org/apache/plc4x/codegen/ast/FileNode.java}    |   26 +-
 .../org/apache/plc4x/codegen/ast/Generator.java    |   76 +
 .../org/apache/plc4x/codegen/ast/IfStatement.java  |   60 +
 .../apache/plc4x/codegen/ast/JavaGenerator.java    |  328 +++
 .../org/apache/plc4x/codegen/ast/LineComment.java} |   26 +-
 .../java/org/apache/plc4x/codegen/ast/Method.java  |   71 +
 .../apache/plc4x/codegen/ast/MethodDefinition.java |   73 +
 .../org/apache/plc4x/codegen/ast/Modifier.java}    |    8 +-
 .../apache/plc4x/codegen/ast/NewExpression.java}   |   31 +-
 .../java/org/apache/plc4x/codegen/ast/Node.java}   |   10 +-
 .../org/apache/plc4x/codegen/ast/NodeVisitor.java} |   11 +-
 .../plc4x/codegen/ast/ParameterExpression.java}    |   24 +-
 .../org/apache/plc4x/codegen/ast/Primitive.java    |   58 +
 .../apache/plc4x/codegen/ast/PythonGenerator.java  |  318 +++
 .../apache/plc4x/codegen/ast/ReturnStatement.java} |   23 +-
 .../org/apache/plc4x/codegen/ast/Statement.java}   |    5 +-
 .../apache/plc4x/codegen/ast/TypeDefinition.java}  |   26 +-
 .../org/apache/plc4x/codegen/ast/TypeUtil.java}    |   12 +-
 .../org/apache/plc4x/codegen/ast/UnknownType.java} |   29 +-
 .../plc4x/codegen/python/AbstractNodeVisitor.java  |  227 +++
 .../org/apache/plc4x/codegen/python/AddNode.java}  |   13 +-
 .../apache/plc4x/codegen/python/AliasNode.java}    |   35 +-
 .../plc4x/codegen/python/AnnAssignerNode.java      |   74 +
 .../org/apache/plc4x/codegen/python/ArgNode.java}  |   35 +-
 .../plc4x/codegen/python/ArgumentsNode.java}       |   29 +-
 .../apache/plc4x/codegen/python/AssignNode.java    |   55 +
 .../apache/plc4x/codegen/python/AttributeNode.java |   63 +
 .../apache/plc4x/codegen/python/AugAssignNode.java |   63 +
 .../org/apache/plc4x/codegen/python/BinOpNode.java |   63 +
 .../org/apache/plc4x/codegen/python/CallNode.java  |   66 +
 .../apache/plc4x/codegen/python/ClassDefNode.java  |   73 +
 .../apache/plc4x/codegen/python/CodePrinter.java   |   74 +
 .../apache/plc4x/codegen/python/CompareNode.java   |   66 +
 .../apache/plc4x/codegen/python/ContextNode.java}  |    5 +-
 .../org/apache/plc4x/codegen/python/EqNode.java}   |   11 +-
 .../org/apache/plc4x/codegen/python/ExprNode.java} |   24 +-
 .../plc4x/codegen/python/FunctionDefNode.java      |   79 +
 .../org/apache/plc4x/codegen/python/IfNode.java    |   66 +
 .../plc4x/codegen/python/ImportFromNode.java       |   66 +
 .../apache/plc4x/codegen/python/KeywordNode.java}  |   35 +-
 .../plc4x/codegen/python/LineEntryNode.java}       |   29 +-
 .../org/apache/plc4x/codegen/python/ListNode.java  |   55 +
 .../org/apache/plc4x/codegen/python/LoadNode.java} |   11 +-
 .../apache/plc4x/codegen/python/ModuleNode.java}   |   27 +-
 .../org/apache/plc4x/codegen/python/MultNode.java} |   11 +-
 .../plc4x/codegen/python/NameConstantNode.java}    |   24 +-
 .../org/apache/plc4x/codegen/python/NameNode.java} |   35 +-
 .../org/apache/plc4x/codegen/python/Node.java}     |   12 +-
 .../apache/plc4x/codegen/python/NodeVisitor.java   |   86 +
 .../apache/plc4x/codegen/python/NotEqNode.java}    |   11 +-
 .../org/apache/plc4x/codegen/python/NumNode.java}  |   24 +-
 .../org/apache/plc4x/codegen/python/PassNode.java} |   11 +-
 .../apache/plc4x/codegen/python/ReturnNode.java}   |   24 +-
 .../apache/plc4x/codegen/python/StoreNode.java}    |   11 +-
 .../org/apache/plc4x/codegen/python/StrNode.java}  |   24 +-
 .../org/apache/plc4x/codegen/python/TupleNode.java |   55 +
 .../org/apache/plc4x/codegen/python/WhileNode.java |   66 +
 .../org/apache/plc4x/codegen/util/BufferUtil.java  |   45 +
 .../org/apache/plc4x/codegen/util/EnumFactory.java |  153 ++
 .../org/apache/plc4x/codegen/util/PojoFactory.java |  120 ++
 sandbox/code-gen/src/main/resources/example.json   |  142 ++
 sandbox/code-gen/src/main/resources/example2.json  | 2129 ++++++++++++++++++++
 .../org/apache/plc4x/codegen/DFDLUtilTest.java}    |   21 +-
 .../org/apache/plc4x/codegen/ModuleNodeTest.java   |  188 ++
 .../org/apache/plc4x/codegen/PojoBuilder.java}     |   18 +-
 .../plc4x/codegen/ast/JavaGeneratorTest.java       |  314 +++
 .../plc4x/codegen/ast/PythonGeneratorTest.java     |   99 +
 .../apache/plc4x/codegen/util/EnumFactoryTest.java |   90 +
 .../java/org/apache/plc4x/codegen/util/MyPojo.java |   65 +
 .../apache/plc4x/codegen/util/PojoFactoryTest.java |   64 +
 .../code-gen/src/test/resources}/protocol.dfdl.xsd |    0
 .../code-generation/driver-base-java}/pom.xml      |   25 +-
 .../github/jinahya/bit/io/MyDefaultBitInput.java}  |   19 +-
 .../apache/plc4x/java/utils/EvaluationHelper.java  |   53 +
 .../apache/plc4x/java/utils/ParseException.java}   |   16 +-
 .../org/apache/plc4x/java/utils/ReadBuffer.java    |  182 ++
 .../org/apache/plc4x/java/utils/SizeAware.java}    |   14 +-
 .../org/apache/plc4x/java/utils/WriteBuffer.java   |  187 ++
 .../code-generation/language-base}/pom.xml         |   21 +-
 .../org/apache/plc4x/language/LanguageOutput.java} |   22 +-
 .../plc4x/language/definitions/Argument.java}      |   22 +-
 .../definitions/ComplexTypeDefinition.java         |   75 +
 .../DiscriminatedComplexTypeDefinition.java}       |   14 +-
 .../language/definitions/EnumTypeDefinition.java}  |   28 +-
 .../language/definitions/TypeDefinition.java}      |   14 +-
 .../language/exceptions/GenerationException.java}  |   16 +-
 .../language/expressions/terms/BinaryTerm.java}    |   31 +-
 .../expressions/terms/BooleanLiteral.java}         |   19 +-
 .../plc4x/language/expressions/terms/Literal.java} |   15 +-
 .../language/expressions/terms/NullLiteral.java}   |   16 +-
 .../expressions/terms/NumericLiteral.java}         |   19 +-
 .../language/expressions/terms/StringLiteral.java} |   19 +-
 .../plc4x/language/expressions/terms/Term.java}    |   14 +-
 .../language/expressions/terms/TernaryTerm.java}   |   37 +-
 .../language/expressions/terms/UnaryTerm.java}     |   25 +-
 .../expressions/terms/VariableLiteral.java         |   75 +
 .../apache/plc4x/language/fields/ArrayField.java}  |   20 +-
 .../apache/plc4x/language/fields/ConstField.java}  |   16 +-
 .../plc4x/language/fields/DiscriminatorField.java} |   16 +-
 .../org/apache/plc4x/language/fields/Field.java}   |   15 +-
 .../plc4x/language/fields/ImplicitField.java}      |   16 +-
 .../plc4x/language/fields/OptionalField.java}      |   15 +-
 .../plc4x/language/fields/PropertyField.java}      |   14 +-
 .../plc4x/language/fields/ReservedField.java}      |   16 +-
 .../apache/plc4x/language/fields/SimpleField.java} |   14 +-
 .../apache/plc4x/language/fields/SwitchField.java} |   18 +-
 .../apache/plc4x/language/fields/TypedField.java}  |   14 +-
 .../language/references/ComplexTypeReference.java} |   14 +-
 .../language/references/SimpleTypeReference.java}  |   19 +-
 .../references/SimpleVarLengthTypeReference.java}  |   14 +-
 .../plc4x/language/references/TypeReference.java}  |   14 +-
 .../language-template-java}/pom.xml                |   38 +-
 .../plc4x/language/java/JavaLanguageOutput.java    |  129 ++
 .../language/java/JavaLanguageTemplateHelper.java  |  474 +++++
 .../org.apache.plc4x.language.LanguageOutput       |   19 +
 .../main/resources/templates/java/io-template.ftlh |  272 +++
 .../resources/templates/java/pojo-template.ftlh    |  156 ++
 .../plc4x-maven-plugin/pom.xml                     |  130 +-
 .../plc4x-maven-plugin/src/it/settings.xml         |    0
 .../plc4x-maven-plugin/src/it/simple-it/pom.xml    |    0
 .../src/main/resources/test/protocol.dfdl.xsd      |    0
 .../src/it/simple-it/verify.groovy                 |    0
 .../codegenerator/parser/expression/Expression.g4  |   69 +
 .../codegenerator/parser/imaginary/Imaginary.g4    |  208 ++
 .../plc4x/plugins/codegenerator/GenerateMojo.java  |  144 ++
 .../expression/ExpressionStringListener.java       |  266 +++
 .../expression/ExpressionStringParser.java         |   51 +
 .../definitions/DefaultComplexTypeDefinition.java  |   91 +
 .../DefaultDiscriminatedComplexTypeDefinition.java |   41 +
 .../definitions/DefaultEnumTypeDefinition.java     |   47 +
 .../model/definitions/DefaultTypeDefinition.java   |   53 +
 .../model/fields/DefaultArrayField.java            |   68 +
 .../model/fields/DefaultConstField.java}           |   33 +-
 .../model/fields/DefaultDiscriminatorField.java}   |   27 +-
 .../model/fields/DefaultImplicitField.java         |   54 +
 .../model/fields/DefaultOptionalField.java         |   56 +
 .../model/fields/DefaultReservedField.java}        |   27 +-
 .../model/fields/DefaultSimpleField.java}          |   29 +-
 .../model/fields/DefaultSwitchField.java           |   54 +
 .../references/DefaultComplexTypeReference.java}   |   17 +-
 .../references/DefaultSimpleTypeReference.java}    |   24 +-
 .../DefaultSimpleVarLengthTypeReference.java}      |   14 +-
 .../parser/MessageFormatListener.java              |  282 +++
 .../codegenerator/parser/MessageFormatParser.java  |   51 +
 .../src/site/asciidoc/index.adoc                   |   20 +
 .../src/site/asciidoc/message-format-language.adoc |   21 +
 .../plugins/codegenerator/GenerateMojoTest.java    |   21 +-
 .../parser/ManualExpressionParserTest.java}        |   19 +-
 .../parser/ManualMessageFormatParserTest.java}     |   18 +-
 .../src/test/projects/s7-external-schema}/pom.xml  |   35 +-
 .../test/projects/simple-embedded-schema/pom.xml   |    7 +-
 .../src/main/resources/protocol.spec               |  203 ++
 .../src/main/resources/template.ftlh               |   59 +
 .../src/test/resources/specs/s7.spec               |  200 ++
 sandbox/code-generation/pom.xml                    |  121 ++
 .../code-generation/protocol-base}/pom.xml         |   21 +-
 .../java/org/apache/plc4x/protocol/Protocol.java}  |   24 +-
 .../code-generation/protocol-s7}/pom.xml           |   19 +-
 .../org/apache/plc4x/protocol/s7/S7Protocol.java}  |   18 +-
 .../services/org.apache.plc4x.protocol.Protocol    |   19 +
 .../src/main/resources/protocols/s7/protocol.spec  |  202 ++
 .../code-generation/test-java-s7-driver/pom.xml    |   89 +
 .../src/test/java/BenchmarkGeneratedS7.java        |   71 +
 .../java/dynamic/actions/BaseConnectedAction.java  |   11 +-
 .../java/dynamic/actions/ConnectAction.java        |   22 +-
 .../java/dynamic/actions/ReceiveAction.java        |    9 +-
 .../sandbox/java/dynamic/actions/SendAction.java   |   10 +-
 .../DynamicDriverException.java}                   |   16 +-
 .../ProtocolIO.java}                               |   14 +-
 .../TcpProtocolIO.java}                            |   27 +-
 .../UdpProtocolIO.java}                            |   30 +-
 sandbox/dynamic-driver-knxnet-ip/pom.xml           |  119 ++
 .../dynamic/knxnetip/DynamicKnxNetIpDriver.java    |   79 +
 .../connection/DynamicKnxNetIpConnection.java      |  134 ++
 .../services/org.apache.plc4x.java.spi.PlcDriver   |   76 +
 .../plc4x/plugins/codegenerator/GenerateMojo.java  |  208 --
 .../src/main/resources/protocol.dfdl.xsd           |  114 --
 sandbox/pom.xml                                    |    2 +
 221 files changed, 14816 insertions(+), 2362 deletions(-)
 create mode 100644 plc4j/drivers/s7/src/test/java/org/apache/plc4x/java/s7/BenchmarkS7.java
 delete mode 100644 protocols/knxnet-ip/src/main/java/.keepMe
 copy protocols/{knxnet-ip => plc4x}/pom.xml (72%)
 rename sandbox/plc4x-maven-plugin/src/test/projects/simple-embedded-schema/src/main/resources/template.ftlh => protocols/plc4x/src/main/resources/daffodil-built-in-catalog.xml (78%)
 create mode 100644 protocols/plc4x/src/main/resources/org/apache/plc4x/protocols/protocol.dfdl.xsd
 delete mode 100644 protocols/s7/src/main/java/.keepMe
 create mode 100644 protocols/s7/src/main/resources/org/apache/plc4x/protocols/protocol.dfdl.xsd
 create mode 100644 protocols/s7/src/main/resources/org/apache/plc4x/protocols/s7/protocol.spec
 copy {protocols/s7 => sandbox/code-gen}/pom.xml (54%)
 create mode 100644 sandbox/code-gen/src/main/antlr4/imaginary.g4
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/DFDLUtil.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/api/Buffer.java} (76%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/AbstractNode.java} (72%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/AssignementExpression.java} (55%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/BinaryExpression.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/Block.java} (51%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/BlockBuilder.java} (55%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/CallExpression.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/ClassDeclaration.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/CodeWriter.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/ConstantExpression.java} (56%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/ConstructorDeclaration.java} (51%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/DeclarationStatement.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/ExceptionType.java} (67%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/Expression.java} (81%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/Expressions.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/FieldDeclaration.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/FieldReference.java} (53%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/FileNode.java} (55%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/Generator.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/IfStatement.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/JavaGenerator.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/LineComment.java} (61%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/Method.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/MethodDefinition.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/Modifier.java} (88%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/NewExpression.java} (53%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/Node.java} (84%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/NodeVisitor.java} (76%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/ParameterExpression.java} (60%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/Primitive.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/ast/PythonGenerator.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/ReturnStatement.java} (62%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/Statement.java} (89%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/TypeDefinition.java} (60%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/TypeUtil.java} (72%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/ast/UnknownType.java} (56%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/AbstractNodeVisitor.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/AddNode.java} (74%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/AliasNode.java} (52%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/AnnAssignerNode.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/ArgNode.java} (51%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/ArgumentsNode.java} (52%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/AssignNode.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/AttributeNode.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/AugAssignNode.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/BinOpNode.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/CallNode.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/ClassDefNode.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/CodePrinter.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/CompareNode.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/ContextNode.java} (89%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/EqNode.java} (74%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/ExprNode.java} (60%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/FunctionDefNode.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/IfNode.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/ImportFromNode.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/KeywordNode.java} (52%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/LineEntryNode.java} (57%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/ListNode.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/LoadNode.java} (74%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/ModuleNode.java} (56%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/MultNode.java} (73%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/NameConstantNode.java} (58%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/NameNode.java} (52%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/Node.java} (74%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/NodeVisitor.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/NotEqNode.java} (74%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/NumNode.java} (61%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/PassNode.java} (73%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/ReturnNode.java} (59%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/StoreNode.java} (73%)
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/main/java/org/apache/plc4x/codegen/python/StrNode.java} (61%)
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/TupleNode.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/python/WhileNode.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/util/BufferUtil.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/util/EnumFactory.java
 create mode 100644 sandbox/code-gen/src/main/java/org/apache/plc4x/codegen/util/PojoFactory.java
 create mode 100644 sandbox/code-gen/src/main/resources/example.json
 create mode 100644 sandbox/code-gen/src/main/resources/example2.json
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/test/java/org/apache/plc4x/codegen/DFDLUtilTest.java} (63%)
 create mode 100644 sandbox/code-gen/src/test/java/org/apache/plc4x/codegen/ModuleNodeTest.java
 copy sandbox/{plc4x-maven-plugin/src/it/simple-it/verify.groovy => code-gen/src/test/java/org/apache/plc4x/codegen/PojoBuilder.java} (71%)
 create mode 100644 sandbox/code-gen/src/test/java/org/apache/plc4x/codegen/ast/JavaGeneratorTest.java
 create mode 100644 sandbox/code-gen/src/test/java/org/apache/plc4x/codegen/ast/PythonGeneratorTest.java
 create mode 100644 sandbox/code-gen/src/test/java/org/apache/plc4x/codegen/util/EnumFactoryTest.java
 create mode 100644 sandbox/code-gen/src/test/java/org/apache/plc4x/codegen/util/MyPojo.java
 create mode 100644 sandbox/code-gen/src/test/java/org/apache/plc4x/codegen/util/PojoFactoryTest.java
 copy {protocols/s7/src/main/resources/org/apache/plc4x/protocols/s7 => sandbox/code-gen/src/test/resources}/protocol.dfdl.xsd (100%)
 copy {protocols/knxnet-ip => sandbox/code-generation/driver-base-java}/pom.xml (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/driver-base-java/src/main/java/com/github/jinahya/bit/io/MyDefaultBitInput.java} (65%)
 create mode 100644 sandbox/code-generation/driver-base-java/src/main/java/org/apache/plc4x/java/utils/EvaluationHelper.java
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/driver-base-java/src/main/java/org/apache/plc4x/java/utils/ParseException.java} (65%)
 create mode 100644 sandbox/code-generation/driver-base-java/src/main/java/org/apache/plc4x/java/utils/ReadBuffer.java
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/driver-base-java/src/main/java/org/apache/plc4x/java/utils/SizeAware.java} (65%)
 create mode 100644 sandbox/code-generation/driver-base-java/src/main/java/org/apache/plc4x/java/utils/WriteBuffer.java
 copy {protocols/knxnet-ip => sandbox/code-generation/language-base}/pom.xml (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/LanguageOutput.java} (58%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/definitions/Argument.java} (64%)
 create mode 100644 sandbox/code-generation/language-base/src/main/java/org/apache/plc4x/language/definitions/ComplexTypeDefinition.java
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/definitions/DiscriminatedComplexTypeDefinition.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/definitions/EnumTypeDefinition.java} (58%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/definitions/TypeDefinition.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/exceptions/GenerationException.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/expressions/terms/BinaryTerm.java} (55%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/expressions/terms/BooleanLiteral.java} (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/expressions/terms/Literal.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/expressions/terms/NullLiteral.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/expressions/terms/NumericLiteral.java} (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/expressions/terms/StringLiteral.java} (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/expressions/terms/Term.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/expressions/terms/TernaryTerm.java} (50%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/expressions/terms/UnaryTerm.java} (61%)
 create mode 100644 sandbox/code-generation/language-base/src/main/java/org/apache/plc4x/language/expressions/terms/VariableLiteral.java
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/fields/ArrayField.java} (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/fields/ConstField.java} (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/fields/DiscriminatorField.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/fields/Field.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/fields/ImplicitField.java} (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/fields/OptionalField.java} (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/fields/PropertyField.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/fields/ReservedField.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/fields/SimpleField.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/fields/SwitchField.java} (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/fields/TypedField.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/references/ComplexTypeReference.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/references/SimpleTypeReference.java} (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/references/SimpleVarLengthTypeReference.java} (65%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/language-base/src/main/java/org/apache/plc4x/language/references/TypeReference.java} (65%)
 copy {protocols/s7 => sandbox/code-generation/language-template-java}/pom.xml (59%)
 create mode 100644 sandbox/code-generation/language-template-java/src/main/java/org/apache/plc4x/language/java/JavaLanguageOutput.java
 create mode 100644 sandbox/code-generation/language-template-java/src/main/java/org/apache/plc4x/language/java/JavaLanguageTemplateHelper.java
 create mode 100644 sandbox/code-generation/language-template-java/src/main/resources/META-INF/services/org.apache.plc4x.language.LanguageOutput
 create mode 100644 sandbox/code-generation/language-template-java/src/main/resources/templates/java/io-template.ftlh
 create mode 100644 sandbox/code-generation/language-template-java/src/main/resources/templates/java/pojo-template.ftlh
 rename sandbox/{ => code-generation}/plc4x-maven-plugin/pom.xml (65%)
 rename sandbox/{ => code-generation}/plc4x-maven-plugin/src/it/settings.xml (100%)
 rename sandbox/{ => code-generation}/plc4x-maven-plugin/src/it/simple-it/pom.xml (100%)
 rename sandbox/{ => code-generation}/plc4x-maven-plugin/src/it/simple-it/src/main/resources/test/protocol.dfdl.xsd (100%)
 rename sandbox/{ => code-generation}/plc4x-maven-plugin/src/it/simple-it/verify.groovy (100%)
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/antlr4/org/apache/plc4x/codegenerator/parser/expression/Expression.g4
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/antlr4/org/apache/plc4x/codegenerator/parser/imaginary/Imaginary.g4
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/GenerateMojo.java
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/expression/ExpressionStringListener.java
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/expression/ExpressionStringParser.java
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/definitions/DefaultComplexTypeDefinition.java
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/definitions/DefaultDiscriminatedComplexTypeDefinition.java
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/definitions/DefaultEnumTypeDefinition.java
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/definitions/DefaultTypeDefinition.java
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/fields/DefaultArrayField.java
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/fields/DefaultConstField.java} (50%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/fields/DefaultDiscriminatorField.java} (55%)
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/fields/DefaultImplicitField.java
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/fields/DefaultOptionalField.java
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/fields/DefaultReservedField.java} (53%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/fields/DefaultSimpleField.java} (53%)
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/fields/DefaultSwitchField.java
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/references/DefaultComplexTypeReference.java} (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/references/DefaultSimpleTypeReference.java} (58%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/model/references/DefaultSimpleVarLengthTypeReference.java} (66%)
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/parser/MessageFormatListener.java
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/parser/MessageFormatParser.java
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/site/asciidoc/index.adoc
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/site/asciidoc/message-format-language.adoc
 rename sandbox/{ => code-generation}/plc4x-maven-plugin/src/test/java/org/apache/plc4x/plugins/codegenerator/GenerateMojoTest.java (74%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/plc4x-maven-plugin/src/test/java/org/apache/plc4x/plugins/codegenerator/parser/ManualExpressionParserTest.java} (56%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/plc4x-maven-plugin/src/test/java/org/apache/plc4x/plugins/codegenerator/parser/ManualMessageFormatParserTest.java} (59%)
 copy sandbox/{plc4x-maven-plugin/src/test/projects/simple-embedded-schema => code-generation/plc4x-maven-plugin/src/test/projects/s7-external-schema}/pom.xml (59%)
 rename sandbox/{ => code-generation}/plc4x-maven-plugin/src/test/projects/simple-embedded-schema/pom.xml (85%)
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/test/projects/simple-embedded-schema/src/main/resources/protocol.spec
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/test/projects/simple-embedded-schema/src/main/resources/template.ftlh
 create mode 100644 sandbox/code-generation/plc4x-maven-plugin/src/test/resources/specs/s7.spec
 create mode 100644 sandbox/code-generation/pom.xml
 copy {protocols/knxnet-ip => sandbox/code-generation/protocol-base}/pom.xml (66%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/protocol-base/src/main/java/org/apache/plc4x/protocol/Protocol.java} (59%)
 copy {protocols/knxnet-ip => sandbox/code-generation/protocol-s7}/pom.xml (70%)
 copy sandbox/{dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/actions/BaseConnectedAction.java => code-generation/protocol-s7/src/main/java/org/apache/plc4x/protocol/s7/S7Protocol.java} (66%)
 create mode 100644 sandbox/code-generation/protocol-s7/src/main/resources/META-INF/services/org.apache.plc4x.protocol.Protocol
 create mode 100644 sandbox/code-generation/protocol-s7/src/main/resources/protocols/s7/protocol.spec
 create mode 100644 sandbox/code-generation/test-java-s7-driver/pom.xml
 create mode 100644 sandbox/code-generation/test-java-s7-driver/src/test/java/BenchmarkGeneratedS7.java
 copy sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/{actions/BaseConnectedAction.java => exceptions/DynamicDriverException.java} (66%)
 copy sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/{actions/BaseConnectedAction.java => io/ProtocolIO.java} (65%)
 copy sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/{actions/BaseConnectedAction.java => io/TcpProtocolIO.java} (56%)
 copy sandbox/dynamic-driver-base/src/main/java/org/apache/plc4x/sandbox/java/dynamic/{actions/BaseConnectedAction.java => io/UdpProtocolIO.java} (52%)
 create mode 100644 sandbox/dynamic-driver-knxnet-ip/pom.xml
 create mode 100644 sandbox/dynamic-driver-knxnet-ip/src/main/java/org/apache/plc4x/sandbox/java/dynamic/knxnetip/DynamicKnxNetIpDriver.java
 create mode 100644 sandbox/dynamic-driver-knxnet-ip/src/main/java/org/apache/plc4x/sandbox/java/dynamic/knxnetip/connection/DynamicKnxNetIpConnection.java
 create mode 100644 sandbox/dynamic-driver-knxnet-ip/src/main/resources/META-INF/services/org.apache.plc4x.java.spi.PlcDriver
 delete mode 100644 sandbox/plc4x-maven-plugin/src/main/java/org/apache/plc4x/plugins/codegenerator/GenerateMojo.java
 delete mode 100644 sandbox/plc4x-maven-plugin/src/test/projects/simple-embedded-schema/src/main/resources/protocol.dfdl.xsd


[plc4x] 01/01: Merge branches 'develop' and 'feature/code-gen' of github.com:apache/plc4x into feature/code-gen

Posted by cd...@apache.org.
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 7ee517e5c88d5f90643e3ad765fd4c98fdb1ae5f
Merge: dbf37ee 256b9b5
Author: Christofer Dutz <ch...@c-ware.de>
AuthorDate: Tue Jun 18 10:11:17 2019 +0200

    Merge branches 'develop' and 'feature/code-gen' of github.com:apache/plc4x into feature/code-gen

 .../s7/src/test/java/org/apache/plc4x/java/s7/model/S7FieldTests.java    | 1 +
 1 file changed, 1 insertion(+)