VIATRA/Releases/MigrationTo1.5
Internal API changes
VQL abstract syntax
The IntValue
and DoubleValue
EClasses were removed from the patternlanguage metamodel. Its functionality is provided by the new NumberValue
EClass that references Xbase number literals.
Hint system compatibility break
The hint system was changed again in version 1.5. If you only used hints through the LocalSearchHints convenience class and the QueryEvaluationHint instances created by that class, then your existing code should remain compatible with version 1.5.
The main change is that query evaluation hints options are no longer identified by Strings, but rather by static instances of the type-safe QueryHintOption. Such hint options can be defined by query evaluator backends (see ReteHintOptions and LocalSearchOptions), and there can be options shared by multiple backends in the future.
Along with the change, the following previously deprecated methods and fields have been entirely removed:
- LocalSearchRuntimeBasedStrategy.plan(PBody, Logger, Set, IQueryMetaContext, IQueryRuntimeContext, Map)
- IQueryBackendHintProvider.getHints(PQuery)
- IQueryBackendHintProvider.DEFAULT
Furthermore, the following classes and methods have been newly deprecated:
- LocalSearchHintKeys
- QueryEvaluationHint(IQueryBackendFactory, Map)
- QueryEvaluationHint.getBackendHints()
- QueryPerformanceTest.getQueryBackendFactory()