org.jasypt.spring.properties
Class EncryptablePropertyPlaceholderConfigurer

Object
  extended by org.springframework.core.io.support.PropertiesLoaderSupport
      extended by org.springframework.beans.factory.config.PropertyResourceConfigurer
          extended by org.springframework.beans.factory.config.PropertyPlaceholderConfigurer
              extended by org.jasypt.spring.properties.EncryptablePropertyPlaceholderConfigurer
All Implemented Interfaces:
org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.config.BeanFactoryPostProcessor, org.springframework.core.Ordered, org.springframework.core.PriorityOrdered

public final class EncryptablePropertyPlaceholderConfigurer
extends org.springframework.beans.factory.config.PropertyPlaceholderConfigurer

Subclass of org.springframework.beans.factory.config.PropertyPlaceholderConfigurer which can make use of a StringEncryptor or TextEncryptor object to decrypt property values if they are encrypted in the loaded resource locations.

A value is considered "encrypted" when it appears surrounded by ENC(...), like:

my.value=ENC(!"DGAS24FaIO$)

Encrypted and unencrypted objects can be combined in the same resources file.

Since:
1.4
Author:
Marcos Muíño García, Carlos Fernández

Field Summary
 
Fields inherited from class org.springframework.beans.factory.config.PropertyPlaceholderConfigurer
DEFAULT_PLACEHOLDER_PREFIX, DEFAULT_PLACEHOLDER_SUFFIX, DEFAULT_VALUE_SEPARATOR, SYSTEM_PROPERTIES_MODE_FALLBACK, SYSTEM_PROPERTIES_MODE_NEVER, SYSTEM_PROPERTIES_MODE_OVERRIDE
 
Fields inherited from class org.springframework.core.io.support.PropertiesLoaderSupport
logger, XML_FILE_EXTENSION
 
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
 
Constructor Summary
EncryptablePropertyPlaceholderConfigurer(StringEncryptor stringEncryptor)
           Creates an EncryptablePropertyPlaceholderConfigurer instance which will use the passed StringEncryptor object to decrypt encrypted values.
EncryptablePropertyPlaceholderConfigurer(TextEncryptor textEncryptor)
           Creates an EncryptablePropertyPlaceholderConfigurer instance which will use the passed TextEncryptor object to decrypt encrypted values.
 
Method Summary
protected  String convertPropertyValue(String originalValue)
           
protected  String resolveSystemProperty(String key)
           
 
Methods inherited from class org.springframework.beans.factory.config.PropertyPlaceholderConfigurer
parseStringValue, processProperties, resolvePlaceholder, resolvePlaceholder, setBeanFactory, setBeanName, setIgnoreUnresolvablePlaceholders, setNullValue, setPlaceholderPrefix, setPlaceholderSuffix, setSearchSystemEnvironment, setSystemPropertiesMode, setSystemPropertiesModeName
 
Methods inherited from class org.springframework.beans.factory.config.PropertyResourceConfigurer
convertProperties, getOrder, postProcessBeanFactory, setOrder
 
Methods inherited from class org.springframework.core.io.support.PropertiesLoaderSupport
loadProperties, mergeProperties, setFileEncoding, setIgnoreResourceNotFound, setLocalOverride, setLocation, setLocations, setProperties, setPropertiesArray, setPropertiesPersister
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EncryptablePropertyPlaceholderConfigurer

public EncryptablePropertyPlaceholderConfigurer(StringEncryptor stringEncryptor)

Creates an EncryptablePropertyPlaceholderConfigurer instance which will use the passed StringEncryptor object to decrypt encrypted values.

Parameters:
stringEncryptor - the StringEncryptor to be used do decrypt values. It can not be null.

EncryptablePropertyPlaceholderConfigurer

public EncryptablePropertyPlaceholderConfigurer(TextEncryptor textEncryptor)

Creates an EncryptablePropertyPlaceholderConfigurer instance which will use the passed TextEncryptor object to decrypt encrypted values.

Parameters:
textEncryptor - the TextEncryptor to be used do decrypt values. It can not be null.
Method Detail

convertPropertyValue

protected String convertPropertyValue(String originalValue)
Overrides:
convertPropertyValue in class org.springframework.beans.factory.config.PropertyResourceConfigurer

resolveSystemProperty

protected String resolveSystemProperty(String key)
Overrides:
resolveSystemProperty in class org.springframework.beans.factory.config.PropertyPlaceholderConfigurer


Copyright © 2011 The JASYPT team. All Rights Reserved.