public interface ConfigurablePropertyResolver extends PropertyResolver
PropertyResolver
types. Provides facilities for accessing and customizing the
ConversionService
used when converting property values from one type to another.Modifier and Type | Method and Description |
---|---|
ConfigurableConversionService |
getConversionService()
Return the
ConfigurableConversionService used when performing type
conversions on properties. |
void |
setConversionService(ConfigurableConversionService conversionService)
Set the
ConfigurableConversionService to be used when performing type
conversions on properties. |
void |
setIgnoreUnresolvableNestedPlaceholders(boolean ignoreUnresolvableNestedPlaceholders)
Set whether to throw an exception when encountering an unresolvable placeholder
nested within the value of a given property.
|
void |
setPlaceholderPrefix(String placeholderPrefix)
Set the prefix that placeholders replaced by this resolver must begin with.
|
void |
setPlaceholderSuffix(String placeholderSuffix)
Set the suffix that placeholders replaced by this resolver must end with.
|
void |
setRequiredProperties(String... requiredProperties)
Specify which properties must be present, to be verified by
validateRequiredProperties() . |
void |
setValueSeparator(String valueSeparator)
Specify the separating character between the placeholders replaced by this
resolver and their associated default value, or
null if no such
special character should be processed as a value separator. |
void |
validateRequiredProperties()
Validate that each of the properties specified by
setRequiredProperties(java.lang.String...) is present and resolves to a
non-null value. |
containsProperty, getProperty, getProperty, getProperty, getProperty, getRequiredProperty, getRequiredProperty, resolvePlaceholders, resolveRequiredPlaceholders
ConfigurableConversionService getConversionService()
ConfigurableConversionService
used when performing type
conversions on properties.
The configurable nature of the returned conversion service allows for
the convenient addition and removal of individual Converter
instances:
ConfigurableConversionService cs = env.getConversionService(); cs.addConverter(new FooConverter());
void setConversionService(ConfigurableConversionService conversionService)
ConfigurableConversionService
to be used when performing type
conversions on properties.
Note: as an alternative to fully replacing the
ConversionService
, consider adding or removing individual
Converter
instances by drilling into getConversionService()
and calling methods such as #addConverter
.
void setPlaceholderPrefix(String placeholderPrefix)
void setPlaceholderSuffix(String placeholderSuffix)
void setValueSeparator(@Nullable String valueSeparator)
null
if no such
special character should be processed as a value separator.void setIgnoreUnresolvableNestedPlaceholders(boolean ignoreUnresolvableNestedPlaceholders)
false
value indicates strict
resolution, i.e. that an exception will be thrown. A true
value indicates
that unresolvable nested placeholders should be passed through in their unresolved
${...} form.
Implementations of PropertyResolver.getProperty(String)
and its variants must inspect
the value set here to determine correct behavior when property values contain
unresolvable placeholders.
void setRequiredProperties(String... requiredProperties)
validateRequiredProperties()
.void validateRequiredProperties() throws MissingRequiredPropertiesException
setRequiredProperties(java.lang.String...)
is present and resolves to a
non-null
value.MissingRequiredPropertiesException
- if any of the required
properties are not resolvable.