1. package org.apache.commons.jexl;
  2. /**
  3. * A Resolver allows custom resolution of the expression, and can be
  4. * added in front of the jexl engine, or after in the evaluation
  5. *
  6. * @todo This needs to be explained in detail. Why do this?
  7. * @author <a href="mailto:geirm@adeptra.com">Geir Magnusson Jr.</a>
  8. * @version $Id: JexlExprResolver.java,v 1.3 2004/08/23 13:53:34 dion Exp $
  9. */
  10. public interface JexlExprResolver
  11. {
  12. Object NO_VALUE = new Object();
  13. /**
  14. * evaluates an expression against the context
  15. *
  16. * @todo Must detail the expectations and effects of this resolver.
  17. * @param context current data context
  18. * @param expression expression to evauluate
  19. * @return value (may be null) po the NO_VALUE object to
  20. * indicate no resolution.
  21. */
  22. Object evaluate(JexlContext context, String expression);
  23. }