@Override public String filterConfigValue(String key, String value, boolean forLog) { String filteredValue = value; for (ConfigFilter filter : configFilters) { filteredValue = forLog ? filter.filterValueForLog(key, filteredValue) : filter.filterValue(key, filteredValue); } return filteredValue; }
private static String filterConfigValueForLog(String key, String value) { List<ConfigFilter> currentConfigFilters = getConfigFilters(); String logValue = value; for (ConfigFilter filter : currentConfigFilters) { logValue = filter.filterValueForLog(key, logValue); } return logValue; }
private static String filterConfigValue(String key, String value) { List<ConfigFilter> currentConfigFilters = getConfigFilters(); String filteredValue = value; for (ConfigFilter filter : currentConfigFilters) { filteredValue = filter.filterValue(key, filteredValue); } return filteredValue; }
@Test public void testConfigFilter() { ConfigFilter configFilter = new TestConfigFilter(); Assert.assertEquals("shouldGetDecrypted: value", configFilter.filterValue("somekey.encrypted", "value")); Assert.assertEquals("**********", configFilter.filterValueForLog("somekey.password", "value")); ConfigResolver.addConfigFilter(configFilter); Assert.assertEquals("shouldGetDecrypted: value", ConfigResolver.getPropertyValue("testkey4.encrypted")); Assert.assertEquals("shouldGetDecrypted: value", ConfigResolver.getProjectStageAwarePropertyValue("testkey4.encrypted")); Assert.assertEquals("shouldGetDecrypted: value", ConfigResolver.getProjectStageAwarePropertyValue("testkey4.encrypted", null)); Assert.assertEquals("shouldGetDecrypted: value", ConfigResolver.getPropertyAwarePropertyValue("testkey4.encrypted", "dbvendor")); Assert.assertEquals("shouldGetDecrypted: value", ConfigResolver.getPropertyAwarePropertyValue("testkey4.encrypted", "dbvendor", null)); List<String> allPropertyValues = ConfigResolver.getAllPropertyValues("testkey4.encrypted"); Assert.assertNotNull(allPropertyValues); Assert.assertEquals(1, allPropertyValues.size()); Assert.assertEquals("shouldGetDecrypted: value", allPropertyValues.get(0)); }