Hi all,
Does anybody have any documentation or guidance on using custom operators in drools rules (which don't break optimization in the lhs)?
We have a large set of rules on distributed systems and need to maintain backwards compatibility on syntax. We are exploring ways to update our interface for one certain class (which we use a lot), to update one field from a string to list of strings (currently the draft implementation is a custom class extending ArrayList<String>).
We want to potentially override existing list operators (e.g. contains()), and add custom operators (e.g. an exclusive contains), and allow for a single string comparison or a list comparison to maintain backwards compatibility.
This is all possible in java but we will have lots of calls to these operators in the conditions of rules and don't want performance decreases. There is an operator interface in the API and some other evaluators in various kie and mval classes, but I can't find any documentation on extensibility and how this will affect the rete algorithm.
Any tips or guidance will be very welcome!
Thank you,
Daniel