Alpha network compiler (#1989)
* Fixed delegates part
* added other two files
* Hardcoded paths
* Removed hardcoded paths
* Optimized import
* Added logging to ObjectTypeNodeCompiler.java
* Collapsed catch blocks
* AlphaNetworkCompilerEnabled property
* Null safe ConfCheck
* Modification test
* Test with modify
* Test with modify 2
* Use configuration
* Propagate tuple without using sinks
* Alpha network compiler tests in Canonical Model
* Parametrization of modify object
* Tests with model compiler
* ObjectTypeNodeCompilerTest.java with executable model
* Using test only in Model Compiler
* Fix testAlphaConstraintWithModification
* Refactor
* Enable model compiler code log
* Use IndexableConstraint instead of ClassReader
* Extracted map name
* Remove fieldname from startHashedAlphaNodes
* Pass ReadAccessor in the constructor
* use reader in AssertHandler
* No more classFieldReader downcasts
* Temporary remove configuration
* Fix tests by passing the read accessor in every case
* Entry key are always strings
* Removed useless code
* Generation of new switch with hardcoded values
* Avoid using switch if it's not a string or an int
* Renamed tests
* Correctly quote value
* New test for Enum
* Removed duplication from AssertHandler.java and ModifyHandler.java
* Run all tests with alpha network
* Disabled tests
* Avoid generating createContextEntry (it seems like it's not used)
* Remove new lines in comments
* Flow with Alpha Network
* drools-test-coverage with alphaNetworkCompiler
* Use alphaNetworkConfiguration
* Access inner class with . instead of $
* always enabled alphaNetwork
* Parametrization
* First draft of null handling
* Use null in Map instead of NullObject
* Removed null object
* NullObject is not useful for switch statements
* Revert "NullObject is not useful for switch statements"
This reverts commit 1dfcaee
* Better quoting
* Null safe alpha node inlining
* Better construction of test
* Use id in name files in order to avoid clashes
* First draft of windowNode handling
* Support setting of WindowNodes
* Removed println
* Flag to enable alphaNetworkCompiler
* Support traversal of CompositePartitionAwareObjectSinkAdapter
* Always on alpha compiler
* Enable alpha network compiler on new tests
* Avoid creating a new CanonicalKieModule (therefore breaking alpha network compiler)
* Updated timeout for failing tests
* NodeHashingTest
* Need to regenerate compiled alpha network after update to new version in incremental compilation
* Fix compilation
* Fix compilation alpha network
* Avoid regenerating alpha network classes if alpha network compiler is disabled
* Avoid creating a new KieModule when it's not necessary
* Also run alpha network on other integration tests
* Also run alpha network on other integration tests
* getKieBuilderFromKieFileSystem shouldn't write the xml
* Generate random class name to avoid clash with incremental compilation
* Avoid clear null classes
* New test for indexing on unswitchable constraint
* Added a new test for the switchable case without the inlining
* Disable logging of exec model
* Flag to enable alphaNetwork testing
* also parametrize integration tests
* Removed typesafe configuration
* Removed useless parameter
* Removed implementation
* Reformat
* Remove commented code
* Remove commented code
* disable logging
* Disabled logging
* Disabled logging
* Quite a bit of space after ifs here
* Update KieBaseUpdater.java
* Update KieContainerImpl.java
* Update ObjectTypeNodeCompiler.java
* Update ObjectTypeNodeParser.java
* Update SwitchCompilerHandler.java
* Update ObjectTypeNodeParser.java
* Update KieBaseUpdater.java
* Update BaseModelTest.java