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 TypeMethodDescriptionvoid
Clear the feedback accumulated by a prior interpolation run.Return the feedback about resolution failures for a particular expression.default Object
Returns 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
null
if not found. This value might contain other expressions separated byexpressionStartDelimiter
andexpressionEndDelimiter
- 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.
-