Example usage for org.springframework.core.env ConfigurablePropertyResolver setPlaceholderSuffix

List of usage examples for org.springframework.core.env ConfigurablePropertyResolver setPlaceholderSuffix

Introduction

In this page you can find the example usage for org.springframework.core.env ConfigurablePropertyResolver setPlaceholderSuffix.

Prototype

void setPlaceholderSuffix(String placeholderSuffix);

Source Link

Document

Set the suffix that placeholders replaced by this resolver must end with.

Usage

From source file:org.zalando.crypto.spring.EncryptablePropertiesPlaceholderConfigurer.java

@Override
protected void processProperties(final ConfigurableListableBeanFactory beanFactoryToProcess,
        final ConfigurablePropertyResolver propertyResolver) throws BeansException {

    propertyResolver.setPlaceholderPrefix(this.placeholderPrefix);
    propertyResolver.setPlaceholderSuffix(this.placeholderSuffix);
    propertyResolver.setValueSeparator(this.valueSeparator);

    StringValueResolver valueResolver = new StringValueResolver() {
        @Override//from  w w w .j a  v a  2  s  .c o m
        public String resolveStringValue(final String strVal) {
            String resolved = ignoreUnresolvablePlaceholders ? propertyResolver.resolvePlaceholders(strVal)
                    : propertyResolver.resolveRequiredPlaceholders(strVal);

            if (resolved.startsWith(cryptoPrefix)) {

                resolved = decrypter.decrypt(resolved.substring(cryptoPrefix.length()));
            }

            return (resolved.equals(nullValue) ? null : resolved);
        }
    };

    doProcessProperties(beanFactoryToProcess, valueResolver);
}