public class WithInterfaceEvaluator extends IdListEvaluator
This evaluator is essential for polymorphic queries where the underlying storage does not support interface-based querying directly. It scans the entity schema for any BOT that implements the requested interface(s) and returns their discriminators.
Example usage:
"SELECT o FROM Order o WHERE o.TypeId IN ({WithInterface com.app.Exportable})"
| Constructor and Description |
|---|
WithInterfaceEvaluator(MEXPersistenceQueryResults _mexQR)
Constructs a new WithInterfaceEvaluator.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
canHandle(java.lang.CharSequence s)
Checks if the instruction can be handled by this evaluator.
|
java.lang.CharSequence |
evaluate(java.lang.CharSequence s,
MEXTransformer transformer)
Processes the "WithInterface" instruction and replaces it with a
formatted list of IDs.
|
java.lang.String[] |
getGroups(java.lang.CharSequence s)
Parses the instruction and extracts the interface name group.
|
public WithInterfaceEvaluator(MEXPersistenceQueryResults _mexQR)
_mexQR - the MEX query results interface providing access to persistence handlers.public boolean canHandle(java.lang.CharSequence s)
canHandle in class IdListEvaluators - the character sequence to inspect.true if the sequence matches the "WithInterface" tag.public java.lang.String[] getGroups(java.lang.CharSequence s)
throws MEXParseException
getGroups in class IdListEvaluators - the raw instruction sequence.MEXParseException - if the syntax does not match PATTERN_WITHINTERFACE_FULL.public java.lang.CharSequence evaluate(java.lang.CharSequence s,
MEXTransformer transformer)
evaluate in interface MEXTransformerEvaluatorIevaluate in class IdListEvaluators - the instruction sequence.transformer - the active transformer.Copyright © 2000-2026 OAshi S.à r.l. All Rights Reserved.