public interface ExpressionResolver
Modifier and Type | Method and Description |
---|---|
String |
resolve(String expression)
Resolves an expression like:
#{name.male_first_name} #{name.last_name} |
String resolve(String expression)
#{name.male_first_name} #{name.last_name}
Single-locale placeholders are defined as #{path.to.key}
.
They resolve to a random value from a single locale - the first one which contains values for the path, unless
the placeholder is part of a nested expression in which case it will always resolve only to its parent
expression's locale. The parent expression's locale is the locale of the first placeholder that was resolved
within it.
Multi-locale placeholders (since 0.8.0) are defined as #{{path.to.key}}
.
They resolve to a random value from a superset of all locales' values.
Digits are defined simply as #
.
Placeholders which don't resolve to anything will be removed from the expression.
Since 0.8.0:
If a path exists but does not resolve to a value or list of values, returns a random key contained directly within it.
It is possible to resolve nested expressions like "#{key1.#{key2}}
" (since 0.8.0).
In that case, the placeholder "#{key2}
" will be resolved first and its result will be used to resolve
the root placeholder.
expression
- the expression to evaluateCopyright © 2021. All rights reserved.