1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.common.util.property.processor;
17
18 import java.util.List;
19 import java.util.Properties;
20
21 import org.jasypt.util.text.TextEncryptor;
22 import org.kuali.common.util.PropertyUtils;
23
24 public class EncryptProcessor implements PropertyProcessor {
25
26 TextEncryptor encryptor;
27
28 public EncryptProcessor() {
29 this(null);
30 }
31
32 public EncryptProcessor(TextEncryptor encryptor) {
33 super();
34 this.encryptor = encryptor;
35 }
36
37 @Override
38 public void process(Properties properties) {
39 List<String> keys = PropertyUtils.getSortedKeys(properties);
40 for (String key : keys) {
41 String clearTextValue = properties.getProperty(key);
42 String encryptedValue = encryptor.encrypt(clearTextValue);
43 properties.setProperty(key, encryptedValue);
44 }
45 }
46
47 public TextEncryptor getEncryptor() {
48 return encryptor;
49 }
50
51 public void setEncryptor(TextEncryptor encryptor) {
52 this.encryptor = encryptor;
53 }
54
55 }