001/** 002 * Copyright 2010-2014 The Kuali Foundation 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016package org.kuali.common.util.property.processor; 017 018import java.util.Properties; 019 020import org.jasypt.util.text.TextEncryptor; 021import org.kuali.common.util.Assert; 022import org.kuali.common.util.PropertyUtils; 023import org.kuali.common.util.enc.EncStrength; 024import org.kuali.common.util.enc.EncUtils; 025 026/** 027 * @deprecated 028 */ 029@Deprecated 030public final class ContextDecryptingProcessor implements PropertyProcessor { 031 032 public ContextDecryptingProcessor() { 033 this(org.kuali.common.util.enc.EncryptionContext.DEFAULT); 034 } 035 036 public ContextDecryptingProcessor(org.kuali.common.util.enc.EncryptionContext context) { 037 Assert.noNulls(context); 038 this.context = context; 039 } 040 041 private final org.kuali.common.util.enc.EncryptionContext context; 042 043 @Override 044 public void process(Properties properties) { 045 Assert.noNulls(properties); 046 if (!context.isEnabled()) { 047 return; 048 } 049 String password = context.getPassword().get(); 050 EncStrength strength = context.getStrength(); 051 TextEncryptor encryptor = EncUtils.getTextEncryptor(password, strength); 052 PropertyUtils.decrypt(properties, encryptor); 053 } 054 055 public org.kuali.common.util.enc.EncryptionContext getContext() { 056 return context; 057 } 058 059}