Interface ValueSource
- All Known Subinterfaces:
FeedbackEnabledValueSource, QueryEnabledValueSource
- All Known Implementing Classes:
AbstractDelegatingValueSource, AbstractFunctionValueSourceWrapper, AbstractValueSource, EnvarBasedValueSource, FeedbackingValueSource, FixedInterpolatorValueSource, MapBasedValueSource, ObjectBasedValueSource, PrefixedObjectValueSource, PrefixedPropertiesValueSource, PrefixedValueSourceWrapper, PropertiesBasedValueSource, SingleResponseValueSource
public interface ValueSource
Supplies one strategy for resolving a value for an interpolation expression.
ValueSources may be stacked.
-
Method Summary
Modifier and TypeMethodDescriptionvoidClear the feedback accumulated by a prior interpolation run.Return the feedback about resolution failures for a particular expression.default ObjectReturns a value resolved from an expression.
-
Method Details
-
getValue
default Object getValue(String expression, String expressionStartDelimiter, String expressionEndDelimiter) Returns a value resolved from an expression. The return value is recursively resolved viaBasicInterpolator.interpolate(String), i.e. might contain expressions as well.- Parameters:
expression- The string expression.expressionStartDelimiter- A valid start delimiter of the expression to be used with the callingInterpolator(by default${).expressionEndDelimiter- A valid end delimiter of the expression to be used with the callingInterpolator(by default}).- Returns:
- the value related to the expression, or
nullif not found. This value might contain other expressions separated byexpressionStartDelimiterandexpressionEndDelimiter - Since:
- 1.28
-
getValue
-
getFeedback
List getFeedback()Return the feedback about resolution failures for a particular expression.- Returns:
- a combination of String and Throwable instances, where strings related to throwables are listed first.
-
clearFeedback
void clearFeedback()Clear the feedback accumulated by a prior interpolation run.
-