Currently SpEL is the hardcoded expression language for reflective wiring annotations (https://docs.nasdanika.org/core/graph/index.html#wiring).
With the introduction of the capability framework it makes sense to add support of multiple expression languages:
- Add
expressionLanguage attribute to annotations which evaluate expressions. Set default to spel
- Create ExpressionLanguageRequirement record taking language name
- Add SpEL capability factory in the capability module
- Add Groovy capability factory in the groovy module (create)
- For annotations in common (Reflector) - create a subclass in Capability (CapabilityReflector) overriding methods which evaluate expressions, keep SpEL as default in common, throw UnsupportedOperationException for languages other than SpEL
- Update Javadoc in annotations which use SpEL
- Also update AbstractDrawioFactory and documentation
Currently SpEL is the hardcoded expression language for reflective wiring annotations (https://docs.nasdanika.org/core/graph/index.html#wiring).
With the introduction of the capability framework it makes sense to add support of multiple expression languages:
expressionLanguageattribute to annotations which evaluate expressions. Set default tospel